What does it mean when a task stalls with DC001003 waiting on EXT ECB?
Release: All supported releases.
When a task is waiting or abends waiting on an EXT ECB with a message:DC001003 Vnnn Tnnn TASK:taskcode PROG:pgmname STALLED WAITING FOR EXT ECB AT <addr>
it means that IDMS could not identify it as one of the external ECBs that IDMS knows about.
This typically means the user application has established its own ECB and has code that #WAITs and #POSTs that ECB.
It is possible that a task snap from the DC001003 might show the ECB the task was waiting for but only if that ECB was in storage owned by the task.
The address of the ECB is in the DC001003 message so if it is an ECB in some kind of control block that is permanent or still allocated at the time, it may be possible to tell what it is.
IDMS deals with two types of ECBs. IDMS internal ECBs and the standard single-word external ECBs, and there is a list of "types" for all of the internal ECBs and all of the external ECBs that IDMS system software deals with.
If the application (or third party vendor product) waits on its own application specific ECB, examining the application code should reveal what the #WAIT is for.
The #ELEDS dsect contains the list of external format ECBs IDMS recognizes.