JOB command fails with Embedded Python
It sounds strange though it's embarrassing.
I have a class with ClassMethods written in ISOS and Embedded Python.
The ClassMethods written in ISOS start in the Background as usual. No problems
But my
ClassMethod setPy() [ Language = python ]
{
import iris, datetime, time
- - -Just fails the JOB command with (even 15 sec) timeout and $ZC=0
This is not funny
My actual workaround:
I created a ClassMethod in ISOS, that does an elegant JobStart
and this ClassMethod only runs the Embedded Python ClassMethod.
I'm not amused and hope there is just an undocumented/unknown param missing
I have a feeling about what's going on. But it's not for public discussion.
Comments
OK. after some detailed analysis I found these facts that I forward to WRC:
- normal JOB command ISOS/COS
- returns $TEST to signal success/fail
- $ZC the id of the started job.
- this happens after complete init of the job or eventually timed
- is always ASYNCHRONOUS to the background job
- JOB command for Embedded Python if not timed
- Hangs until AFTER completion of the started job
- then return $TEST and $ZC which is useless as the job is gone!
- acts SYNCHONOUS to the started job
- timed JOB command for Embedded Python
- returns after the timeout with $TEST = 0 ==> FAILED
- does not return the id of the started JOB
- though the started Job may work fine
- you just don't get info and may find out by other means if it is OK
- Workaround until a fix.
- Start a background job as ISOS/COS Class Method
- let this class method start your method in Embedded Python.
Another reason why Embedded Python Pure is just a fiction
Thanks @Robert Cemper! Great feedback! Calling @Bob Kuszewski
...and it appears that Mr C is also trying to sneak in a new abbreviation for ObjectScript: ISOS. ![]()
Hi @Joel Solon , I see it that way:
COS is aged but was not as short as M (even more aged)
but InterSystemsObjectScript are 24 Character to type !
At least 18+ chances for mistyping with my old fingers. ![]()
So I have my personal FLA (4 letter abbreviation) to write "new-speak" and get it sorted right.