diff --git a/src/slurmctld/state_save.c b/src/slurmctld/state_save.c index a6c893b7b83dc72a7063a45f759be5b06c3e1d5c..e8704899c8a184590fdbec48a0672025c8500841 100644 --- a/src/slurmctld/state_save.c +++ b/src/slurmctld/state_save.c @@ -63,6 +63,8 @@ extern int fsync_and_close(int fd, char *file_type) { int rc = 0, retval, pos; + /* SLURM state save files are typically stored on shared filesystems, + * so lets give fysync() three tries to sync the data to disk. */ for (retval = 1, pos = 1; retval && pos < 4; pos++) { retval = fsync(fd); if (retval && (errno != EINTR)) {