Commit Graph

24 Commits

Author SHA1 Message Date
Dana Robinson
d7b277a22a Improves autotools and CMake support for sigtimedwait alternative 2021-03-01 13:54:27 -08:00
Dana Robinson
0e9f9a280a Adds MacOS work-around for sigtimedwait(2) in the VFD SWMR tests 2021-02-26 11:34:53 -08:00
vchoi
d8e77f13be (1) Add new routine to configure for VFD SWMR: init_vfd_swmr_config()
(2) Revise routine to setup fapl for VFD SWMR legacy and other integration tests: vfd_swmr_create_fapl()
(3) Update all VFD SWMR integration tests to use the above two routines
(4) Clean up VFD SWMR legacy tests: turn on compression in test script, remove #ifdef OUT H5Fflush(), message file name
2021-02-02 16:01:35 -06:00
David Young
8e2053bb3d Move below_speed_limit() from vfd_swmr_bigset_writer.c to
vfd_swmr_common.c, document it, and fix a bug.
2020-09-17 14:35:54 -05:00
David Young
da688311af Document some of the functions in here. Update the comment at the top
of the file.  NFCI.
2020-09-17 14:34:46 -05:00
David Young
78bd491aad Add to the "bigset" writer a -M command-line option that enables the use of
multiple files with virtual datasets.

Add to vfd_swmr_create_fapl() printf(3)-like arguments for setting the shadow
filename.  Update all callers.
2020-07-21 11:13:05 -05:00
David Young
a9fefff620 Add evsnprintf for printing a va_list to a buffer or aborting the program on
an overflow or other error.
2020-07-21 10:18:43 -05:00
David Young
57fde42f7d Wrap a line. NFCI. 2020-06-11 16:21:52 -05:00
David Young
5cde36e2cd Delete code that has no effect: don't empty a mask set only to fill it
in the next expression.
2020-06-11 16:20:46 -05:00
David Young
cd0eaf6271 Cast a non-negative int to size_t before comparing with size_t so that
the compiler believes we know what we're doing and does not warn.
2020-05-26 15:48:17 -05:00
David Young
35a4bfb551 Extend VFD SWMR tick length and maximum lag parameters. 2020-05-08 19:32:24 -05:00
David Young
696173c284 Add esnprintf that prints to the given buffer, observing the given
buffer size, using vsnprintf(3), but exits with err(3)/errx(3) if the
buffer is too small or if vsnprintf returns < 0.
2020-05-06 14:44:59 -05:00
David Young
57e5c4305c Avoid deadlock of reader and writer: make the writer flush file content
before waiting for the reader's message.
2020-04-30 15:22:36 -05:00
David Young
becb9d8292 In fetch_env_ulong(), report a parse that consumes fewer than all
characters differently than other parse failures.
2020-04-30 15:21:26 -05:00
David Young
4e48041a13 Move fetch_env_ulong() from vfd_swmr.c to vfd_swmr_common.c for eventual
reuse by the zoo writer.
2020-04-28 08:35:12 -05:00
David Young
de18e8c95a Make await_signal() await any signal instead of just SIGINT. Add a
(commented out) private version of strsignal(3), just in case we need
one on some platform.
2020-04-21 15:19:19 -05:00
David Young
21f3fae469 Refactor: extract subroutine estack_get_state() for reuse in a commit
that's coming soon.
2020-04-16 15:30:27 -05:00
David Young
86be273386 Send debug messages to stderr instead of to stdout. 2020-04-16 15:29:26 -05:00
David Young
ae351c2376 Add tests for the two expected failure modes for variable-length (VL) strings
in VFD SWMR mode.
2020-03-13 14:16:40 -05:00
David Young
9e81f0103c Add disable_estack() and restore_estack() for disabling the current error-stack
handling and restoring the previous error-stack handling.
2020-03-12 12:27:57 -05:00
David Young
1818420acd In await_signal(), print a less alarming message when exiting in normal
circumstances.

Write a comment that tells why await_signal() periodically calls the HDF5 API.
2020-03-09 13:47:26 -05:00
David Young
c8f533cfc3 Merge all of my changes from merge-back-to-feature-vfd_swmr-attempt-1,
including the merge of `hdffv/hdf5/develop`, back to the branch that Vailin and
I share.

Now I need to put this branch on a fork with a less confusing name than
vchoi_fork!
2019-12-09 10:30:58 -06:00
Vailin Choi
ce2748f011 (A) Fixes for the assertion failures described in issue #2 (see John Mainzer's last checkin message):
--src/H5PB.c: checks for size >= page size
--src/H5MF.c: disable/enable page buffering in H5MF_tidy_self_referential_fsm_hack()
--src/H5MFsection.c: call H5PB_remove_entry() for both raw/metadata pages in H5MF__sect_small_merge()
(B) Port and modify existing concurrent swmr tests to VFD SWMR. Also modify the following:
--remove flushes from VFD SWMR writer tests
--set Nreaders to 0 in test/testvfdswmr.sh.in to test for writers only
Please enter the commit message for your changes. Lines starting
2018-11-14 15:35:35 -06:00
Vailin Choi
5c7ca8afff Third batch of checkin:
1) Free space manager for the metadata file
2) Delayed free space release linked list
3) H5F_update_vfd_swmr_metadata_file()
3) VFD SWMR driver: read callback
4) Flushing for VFD SWMR
5) Port one concurrent test from swmr test set
6) Bug fixes and refactoring
2018-09-28 11:29:02 -05:00