Ensure we get a non-zero exit status when we can't find the specified fork agent. Output a better error message, and ensure we don't multiply report the problem.
This commit was SVN r26191.
Этот коммит содержится в:
родитель
6dc44dc4b8
Коммит
ca3ff58c76
@ -73,3 +73,11 @@ This is an error; your job will now abort.
|
|||||||
Local host: %s
|
Local host: %s
|
||||||
Application name: %s
|
Application name: %s
|
||||||
Action requested: %s %s
|
Action requested: %s %s
|
||||||
|
#
|
||||||
|
[orte-odls-base:fork-agent-not-found]
|
||||||
|
The specified fork agent was not found:
|
||||||
|
|
||||||
|
Node: %s
|
||||||
|
Fork agent: %s
|
||||||
|
|
||||||
|
The application cannot be launched.
|
||||||
|
@ -1529,6 +1529,7 @@ int orte_odls_base_default_launch_local(orte_jobid_t job,
|
|||||||
"orte-odls-base:xterm-rank-out-of-bounds",
|
"orte-odls-base:xterm-rank-out-of-bounds",
|
||||||
true, nm->name.vpid, jobdat->num_procs);
|
true, nm->name.vpid, jobdat->num_procs);
|
||||||
rc = ORTE_ERR_VALUE_OUT_OF_BOUNDS;
|
rc = ORTE_ERR_VALUE_OUT_OF_BOUNDS;
|
||||||
|
child->exit_code = ORTE_ERR_SILENT;
|
||||||
goto CLEANUP;
|
goto CLEANUP;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1551,8 +1552,11 @@ int orte_odls_base_default_launch_local(orte_jobid_t job,
|
|||||||
free(app->app);
|
free(app->app);
|
||||||
app->app = opal_path_findv(orte_fork_agent[0], X_OK, orte_launch_environ, NULL);
|
app->app = opal_path_findv(orte_fork_agent[0], X_OK, orte_launch_environ, NULL);
|
||||||
if (NULL == app->app) {
|
if (NULL == app->app) {
|
||||||
opal_output(0, "%s CANNOT FIND FORK AGENT %s", ORTE_NAME_PRINT(ORTE_PROC_MY_NAME), orte_fork_agent[0]);
|
orte_show_help("help-orte-odls-base.txt",
|
||||||
rc = ORTE_ERR_NOT_FOUND;
|
"orte-odls-base:fork-agent-not-found",
|
||||||
|
true, orte_process_info.nodename, orte_fork_agent[0]);
|
||||||
|
rc = ORTE_ERR_SILENT;
|
||||||
|
child->exit_code = ORTE_ERR_SILENT;
|
||||||
goto CLEANUP;
|
goto CLEANUP;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -231,6 +231,9 @@ static void dump_aborted_procs(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
switch (proc->exit_code) {
|
switch (proc->exit_code) {
|
||||||
|
case ORTE_ERR_SILENT:
|
||||||
|
/* say nothing - it was already reported */
|
||||||
|
break;
|
||||||
case ORTE_ERR_SYS_LIMITS_PIPES:
|
case ORTE_ERR_SYS_LIMITS_PIPES:
|
||||||
orte_show_help("help-orterun.txt", "orterun:sys-limit-pipe", true,
|
orte_show_help("help-orterun.txt", "orterun:sys-limit-pipe", true,
|
||||||
orte_basename, proc->node->name,
|
orte_basename, proc->node->name,
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user