Add test code from Terry. Properly terminate if we don't abort on non-zero exit
This commit was SVN r26271.
Этот коммит содержится в:
родитель
ddfbde587f
Коммит
f68487016c
@ -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
Обычный файл
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);
|
||||
}
|
Загрузка…
Ссылка в новой задаче
Block a user