diff --git a/orte/mca/errmgr/default_orted/errmgr_default_orted.c b/orte/mca/errmgr/default_orted/errmgr_default_orted.c index 05e5e3e414a..b0f1d9152dc 100644 --- a/orte/mca/errmgr/default_orted/errmgr_default_orted.c +++ b/orte/mca/errmgr/default_orted/errmgr_default_orted.c @@ -585,6 +585,14 @@ static void proc_errors(int fd, short args, void *cbdata) * so that we send a consolidated error report * back to the HNP */ + if (jdata->num_local_procs == jdata->num_terminated) { + /* let the state machine know */ + if (ORTE_PROC_STATE_FAILED_TO_START == state) { + ORTE_ACTIVATE_JOB_STATE(jdata, ORTE_JOB_STATE_FAILED_TO_START); + } else { + ORTE_ACTIVATE_JOB_STATE(jdata, ORTE_JOB_STATE_FAILED_TO_LAUNCH); + } + } goto cleanup; }