Critical bugfix for ior API (used e.g. in IO500)

TODO: Check potential issue when using IOR scripts with different backends.
master
Julian M. Kunkel 2020-05-28 21:18:44 +01:00
parent 4eb0ebec55
commit 153b7aa60f
2 changed files with 4 additions and 2 deletions

View File

@ -76,6 +76,7 @@ IOR_test_t * ior_run(int argc, char **argv, MPI_Comm world_com, FILE * world_out
/* perform each test */
for (tptr = tests_head; tptr != NULL; tptr = tptr->next) {
aiori_initialize(tptr);
totalErrorCount = 0;
verbose = tptr->params.verbose;
backend = tptr->params.backend;
@ -85,6 +86,7 @@ IOR_test_t * ior_run(int argc, char **argv, MPI_Comm world_com, FILE * world_out
TestIoSys(tptr);
tptr->results->errors = totalErrorCount;
ShowTestEnd(tptr);
aiori_finalize(tptr);
}
PrintLongSummaryAllTests(tests_head);
@ -123,7 +125,7 @@ int ior_main(int argc, char **argv)
InitTests(tests_head, mpi_comm_world);
verbose = tests_head->params.verbose;
aiori_initialize(tests_head);
aiori_initialize(tests_head); // this is quite suspicious, likely an error when multiple tests need to be executed with different backends and options
PrintHeader(argc, argv);

View File

@ -274,7 +274,7 @@ static void prep_testdir(int j, int dir_iter){
static void phase_end(){
if (call_sync){
if(! backend->sync){
FAIL("Error, backend does not provide the sync method, but you requested to use sync.");
FAIL("Error, backend does not provide the sync method, but you requested to use sync.\n");
}
backend->sync(& param);
}