1
1

Don't forget to set the name argument before spawning the daemon.

This commit was SVN r15047.
Этот коммит содержится в:
George Bosilca 2007-06-13 15:45:34 +00:00
родитель 8e7daea11f
Коммит 18c2bb0ed6

Просмотреть файл

@ -150,8 +150,8 @@ static const char * orte_pls_process_shell_name[] = {
/* local global storage of timing variables */
static struct timeval joblaunchstart, joblaunchstop;
/* global storage of active jobid being launched */
static orte_jobid_t active_job = ORTE_JOBID_INVALID;
/* global storage of active jobid being launched */
static orte_jobid_t active_job = ORTE_JOBID_INVALID;
/**
* Check the Shell variable on the specified node
@ -482,12 +482,12 @@ int orte_pls_process_launch(orte_jobid_t jobid)
return rc;
}
/* account for any reuse of daemons */
if (ORTE_SUCCESS != (rc = orte_pls_base_launch_on_existing_daemons(map))) {
ORTE_ERROR_LOG(rc);
goto cleanup;
}
/* account for any reuse of daemons */
if (ORTE_SUCCESS != (rc = orte_pls_base_launch_on_existing_daemons(map))) {
ORTE_ERROR_LOG(rc);
goto cleanup;
}
num_nodes = map->num_new_daemons;
if (0 == num_nodes) {
/* nothing to do - just return */
@ -605,12 +605,16 @@ int orte_pls_process_launch(orte_jobid_t jobid)
char **exec_argv;
rmaps_node = (orte_mapped_node_t*)n_item;
/* if this daemon already exists, don't launch it! */
if (rmaps_node->daemon_preexists) {
continue;
/* if this daemon already exists, don't launch it! */
if (rmaps_node->daemon_preexists) {
continue;
}
/* setup node name */
free(argv[node_name_index2]);
argv[node_name_index2] = strdup(rmaps_node->nodename);
if (mca_pls_process_component.debug) {
param = opal_argv_join(argv, ' ');
if (NULL != param) {
@ -777,10 +781,10 @@ int orte_pls_process_launch(orte_jobid_t jobid)
}
pid = _spawnve( _P_NOWAIT, exec_path, exec_argv, env);
if (pid == -1) {
/* indicate this daemon has been launched in case anyone is sitting on that trigger */
if (ORTE_SUCCESS != (rc = orte_smr.set_proc_state(rmaps_node->daemon, ORTE_PROC_STATE_LAUNCHED, 0))) {
ORTE_ERROR_LOG(rc);
goto cleanup;
/* indicate this daemon has been launched in case anyone is sitting on that trigger */
if (ORTE_SUCCESS != (rc = orte_smr.set_proc_state(rmaps_node->daemon, ORTE_PROC_STATE_LAUNCHED, 0))) {
ORTE_ERROR_LOG(rc);
goto cleanup;
}
failed_launch = true;
rc = ORTE_ERROR;
@ -815,6 +819,9 @@ int orte_pls_process_launch(orte_jobid_t jobid)
}
}
}
/* get here if launch went okay */
failed_launch = false;
cleanup:
if (NULL != map) {