Sometimes a batch run-unit abends with a DC001003 abend (stalled waiting
for EREECB). There is no further information on the IDMS log. The ECB
is of course long gone by the time we are looking at this. According to
the message definition, this abend can be caused by exceeding the
inactive interval, the internal wait time, or the external wait time.
That covers a lot of possibilities. Is there any way to get more
information (after the fact) about what the run-unit was waiting for?
An external Rununit program such as Batch or CICS program that accesses an IDMS CV (referred to as ERUS) can abend DC001003 STALLED WAITING FOR EREECB.
This Stall abend is specific to the EXTERNAL WAIT Interval specified in sysgen on the SYSTEM statement or on the TASK statement.
EXTERNAL WAIT is how long the CV will wait for the external program to issue it's next DML command.
Once the Task and Transaction (rununit) for the ERUS pgm has been started, each time the CV services a DML command and returns to the ERUS pgm, it waits on EREECB for the next command.
If CV waits longer than the EXTERNAL WAIT interval, the task will be abended DC001003 STALLED WAITING FOR EREECB.