03-22-2017 08:10 PM
I'm doing 3 "Execute process" calls in a row:
1. cURL to get an id
2. cURL to download a file with the id
3. unzip of the file
It seems that they are not waiting for each other, so the 2. is executing before 1 is truly done. Is there a "wait until the predecessor is done" option? I know about the "Delay" operator and putting those in does work. But I was hoping I wouldn't have to basically put in the worst case delay.
03-22-2017 09:37 PM
Something sounds strange, usually the 2nd Execute Process will trigger after the 1st one is done and so forth. The 2nd process can't execute without getting the ID from the 1st process, right? Does this crash?
03-22-2017 09:44 PM
Hmm, hard to know with out seeing the process and data. I'm guessing RM thinks the process 1 is done but it really isn't.
03-23-2017 10:01 AM - edited 03-23-2017 10:02 AM
assuming you execute the cURL command within in Execute Program Operator RapidMiner views it as finished when the command is triggered.
Do you have the In and Output Ports of the Execute Process Operators connected? You might try that and check the Use Input checkbox.
Do you have the same problems when you execute everything within one process?
03-23-2017 10:52 AM
I'm trying to build a process to replicate at my end, but haven't had luck so far as it seems to work each time for my one.
Is there any chance you could anonymise an example process for us to have a closer look at?
Also, have you tried turning off cache process on the Execute Process for Step 2? That might help a bit.