summaryrefslogtreecommitdiffstats
path: root/test/vfd_swmr_bigset_writer.c
diff options
context:
space:
mode:
authorDavid Young <dyoung@hdfgroup.org>2020-08-18 22:42:35 (GMT)
committerDavid Young <dyoung@hdfgroup.org>2020-08-18 22:42:35 (GMT)
commit38310e91760795632252aecddc294139fc00c449 (patch)
tree02c6992e0195c69cc2358ff89551e1dc0cedfe20 /test/vfd_swmr_bigset_writer.c
parenta06d6f235d5ec0956e8418f0fd5e9fe7cff0c47b (diff)
downloadhdf5-38310e91760795632252aecddc294139fc00c449.zip
hdf5-38310e91760795632252aecddc294139fc00c449.tar.gz
hdf5-38310e91760795632252aecddc294139fc00c449.tar.bz2
Sleep 1/10s between H5Dopen() tries. Make a couple of warning/error messages
more clear/correct.
Diffstat (limited to 'test/vfd_swmr_bigset_writer.c')
-rw-r--r--test/vfd_swmr_bigset_writer.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/test/vfd_swmr_bigset_writer.c b/test/vfd_swmr_bigset_writer.c
index 701c6bc..2da7566 100644
--- a/test/vfd_swmr_bigset_writer.c
+++ b/test/vfd_swmr_bigset_writer.c
@@ -683,6 +683,8 @@ open_extensible_dset(state_t *s, unsigned int which)
es = disable_estack();
for (i = 0; i < tries; i++) {
+ struct timespec one_tenth = {.tv_sec = 0,
+ .tv_nsec = 1000000000L / 10};
ds = H5Dopen(s->file[0], dname, s->dapl);
@@ -690,15 +692,17 @@ open_extensible_dset(state_t *s, unsigned int which)
break;
if (below_speed_limit(&last, &ival)) {
- warnx("H5Dopen(, \"%s\", ) failed, %d retries remain",
+ warnx("H5Dopen(, \"%s\", ) transient failure, %d retries remain",
dname, tries - i - 1);
}
+ while (nanosleep(&one_tenth, &one_tenth) == -1 && errno == EINTR)
+ ; // do nothing
}
restore_estack(es);
if (i == tries) {
errx(EXIT_FAILURE, "H5Dopen(, \"%s\", ) failed after %d tries",
- dname, tries - i - 1);
+ dname, tries);
}
if ((ty = H5Dget_type(ds)) < 0)