Skip to content

Commit 9d8c58a

Browse files
Merge pull request #621 from E3SM-Project/jayeshkrishna/fix_nc_del_adios_sym
Avoiding using NetCDF delete function to delete ADIOS BP output symlinks
2 parents e40f1cb + 3e0707c commit 9d8c58a

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

src/clib/pio_file.cpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1161,11 +1161,6 @@ int PIOc_deletefile_impl(int iosysid, const char *filename)
11611161

11621162
if (!mpierr && ios->io_rank == 0)
11631163
{
1164-
#ifdef _NETCDF
1165-
ierr = nc_delete(filename);
1166-
#else /* Assume that _PNETCDF is defined. */
1167-
ierr = ncmpi_delete(filename, MPI_INFO_NULL);
1168-
#endif
11691164
#ifdef _ADIOS2
11701165
/* Append ".bp" to filename for the corresponding ADIOS BP filename */
11711166
static const char adios_bp_filename_extn[] = ".bp";
@@ -1186,6 +1181,15 @@ int PIOc_deletefile_impl(int iosysid, const char *filename)
11861181
spio_remove_directory(adios_bp_filename);
11871182
}
11881183
free(adios_bp_filename);
1184+
1185+
/* Delete the file (for ADIOS BP files, delete the symlink file) */
1186+
ierr = unlink(filename);
1187+
#elif defined(_PNETCDF)
1188+
ierr = ncmpi_delete(filename, MPI_INFO_NULL);
1189+
#elif defined(_NETCDF)
1190+
ierr = nc_delete(filename);
1191+
#else
1192+
ierr = unlink(filename);
11891193
#endif
11901194
}
11911195

0 commit comments

Comments
 (0)