1
1

Add test code from Terry. Properly terminate if we don't abort on non-zero exit

This commit was SVN r26271.
Этот коммит содержится в:
Ralph Castain 2012-04-16 16:44:23 +00:00
родитель ddfbde587f
Коммит f68487016c
3 изменённых файлов: 29 добавлений и 1 удалений

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

@ -345,6 +345,22 @@ static void proc_errors(int fd, short args, void *cbdata)
if (ORTE_PROC_STATE_TERM_NON_ZERO == state) {
if (!orte_abort_non_zero_exit) {
/* leave the child in orte_local_children so we can
* later send the state info after full job termination
*/
child->state = state;
child->waitpid_recvd = true;
if (child->iof_complete) {
/* the proc has terminated */
child->alive = false;
/* Clean up the session directory as if we were the process
* itself. This covers the case where the process died abnormally
* and didn't cleanup its own session directory.
*/
orte_session_dir_finalize(&child->name);
/* track job status */
jdata->num_terminated++;
}
/* treat this as normal termination */
goto REPORT_STATE;
}

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

@ -1,4 +1,4 @@
PROGS = mpi_no_op mpi_barrier hello hello_nodename abort multi_abort simple_spawn concurrent_spawn spawn_multiple mpi_spin delayed_abort loop_spawn loop_child bad_exit pubsub hello_barrier segv accept connect hello_output hello_show_help crisscross read_write ziatest slave_spawn slave cell_spawn reduce-hang ziaprobe ziatest bcast_loop parallel_w8 parallel_w64 parallel_r8 parallel_r64 sio sendrecv_blaster hello++ hellof90 early_abort debugger singleton_client_server intercomm_create spawn_tree
PROGS = mpi_no_op mpi_barrier hello hello_nodename abort multi_abort simple_spawn concurrent_spawn spawn_multiple mpi_spin delayed_abort loop_spawn loop_child bad_exit pubsub hello_barrier segv accept connect hello_output hello_show_help crisscross read_write ziatest slave_spawn slave cell_spawn reduce-hang ziaprobe ziatest bcast_loop parallel_w8 parallel_w64 parallel_r8 parallel_r64 sio sendrecv_blaster hello++ hellof90 early_abort debugger singleton_client_server intercomm_create spawn_tree init-exit77
all: $(PROGS)

12
orte/test/mpi/init-exit77.c Обычный файл
Просмотреть файл

@ -0,0 +1,12 @@
#include <stdio.h>
#include <stdlib.h>
main(int argc, char **argv) {
int debugme = 1;
MPI_Init(&argc, argv);
printf("init...\n");
fflush(0);
MPI_Finalize();
exit(77);
}