Commit Graph

3611 Commits

Author SHA1 Message Date
Dana Robinson
9a598477c6 Merge pull request #2541 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c03ee563f46013d22f36a1895664a9ba876558e9':
  Further updates to the tools warnings fixes from code review.
  Updates to tools warning PR from code review.
  Fixes for warnings in the tools code.
2020-04-27 10:51:58 -05:00
Dana Robinson
de3bfa697a Updates to tools warning PR from code review. 2020-04-26 02:54:29 -07:00
Dana Robinson
a8676d74d9 Fixes for warnings in the tools code. 2020-04-25 16:49:04 -07:00
David Young
d16eb45d53 For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAX
instead of "%ju".
2020-04-24 18:49:37 -05:00
David Young
737a28dc97 Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointer
to integer of different size [-Werror=pointer-to-int-cast]` and
`test/snapshots-hdf5/current/test/swmr_sparse_reader.c:129:100:
error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]`.
2020-04-24 10:22:28 -05:00
Quincey Koziol
9e5dbf6906 Trim trailing whitespace 2020-04-20 18:12:00 -05:00
Jacob Smith
075e74e9b2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into feature/vfd_splitter_mirror_a 2020-04-07 10:29:00 -05:00
Jacob Smith
d97c00013d Tidying of Mirror VFD.
* Rename server-stop utility to mirror_server_stop.
* Remove external dependency on bzero().
* Modify test/use_common to use only the public API.
* Rename internal bitswap macro to follow convention.
2020-04-07 10:20:44 -05:00
Allen Byrne
61b8018004 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f6514c35ea3786206a8db73e1cad8fce8fe6a715':
  Updated test ddl files so CMake passes after h5dump failures.
  Modifications based on PR review feedback.
  Add two routines gen_ref_files() and gen_sel_files() to generate test files related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-04-07 07:08:16 -05:00
Vailin Choi
1e52e74ca8 Merge pull request #2472 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/bounds_compat to develop
* commit '3f081c99376ad562dcb6bbf7d6c11216f682aca7':
  Modifications based on PR review feedback.
  Add two routines gen_ref_files() and gen_sel_files() to generate test files related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-04-06 16:37:47 -05:00
Allen Byrne
b4dcee96ce Minor updates and fix settings for fortran flags 2020-04-06 12:17:43 -05:00
Allen Byrne
57f5d00a43 TRILAB-192 add c++ and fortran warnings build systems one file 2020-04-05 10:50:08 -05:00
Vailin Choi
bae05235a2 Merge pull request #2461 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/dtype_close_on_error to develop
* commit 'afdcac28b85d690eebc80ab568fa5266081baaaa':
  A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails. This is triggered by the tests for revised references when the libver bounds setting does not allow version 4 datatype message to be created.  The test failure is abort core dumped. This is due to the datatype initialization fails before the datatype ID is registered. The datatype cleanup code should provide for the above situation. The code to fix the problem is the same as what is done in H5D__open_oid().
2020-04-01 22:14:42 -05:00
vchoi
3f081c9937 Modifications based on PR review feedback. 2020-03-31 19:53:14 -05:00
vchoi
6740ee1dcd Add two routines gen_ref_files() and gen_sel_files() to generate test files related to
references and selections.
These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-03-26 12:06:04 -05:00
Quincey Koziol
0eb562bc20 Refactor to reduce verbosity. 2020-03-26 11:51:26 -05:00
Quincey Koziol
a3e08862c6 Correct macro check 2020-03-25 15:52:11 -05:00
Quincey Koziol
60e446113f Correct failure when allocation tracking are disabled. 2020-03-24 12:17:25 -05:00
vchoi
afdcac28b8 A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails.
This is triggered by the tests for revised references when the libver bounds setting does not allow version
4 datatype message to be created.  The test failure is abort core dumped.
This is due to the datatype initialization fails before the datatype ID is registered.
The datatype cleanup code should provide for the above situation.
The code to fix the problem is the same as what is done in H5D__open_oid().
2020-03-23 01:16:32 -05:00
Quincey Koziol
b51585a911 Revise API for H5get_alloc_stats() to take a struct instead of separate values. 2020-03-20 16:39:55 -05:00
Quincey Koziol
66350c3356 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-20 15:50:24 -05:00
Allen Byrne
6be711bbd2 Fix threadsafe for new test 2020-03-18 15:31:27 -05:00
Jacob Smith
b65405439d Add Splitter VFD to library.
* "Simultaneous and equivalent" Read-Write and Write-Only channels for
  file I/O.
* Only supports drivers with the H5FD_FEAT_DEFAULT_VFD_COMPATIBLE flag for
  now, preventing issues with multi-file drivers.

Add Mirror VFD to library.

* Write-only operations over a network.
* Uses TCP/IP sockets.
* Server and auxiliary server-shutdown programs provided in a new directory,
  `utils/mirror_vfd`.
* Automated testing via loopback ("remote" of localhost).
2020-03-13 17:13:17 -05:00
Quincey Koziol
04b8cc82a8 Add routines to query the library's free list sizes and allocation stats. 2020-03-10 18:37:55 -05:00
David Young
3e93aa9514 So that I can use PASSED(); anywhere a statement can go, #define PASSED() with
a do-while wrapper.
2020-02-28 16:51:55 -06:00
David Young
803d805c74 Complete the comment on thread_main(), explaining why the barrier is used. 2020-02-27 16:14:44 -06:00
David Young
4be589813a The first implementation seemed to allow for the possibility that a thread
could block at the barrier, wake and exit the barrier, re-acquire the barrier
lock and increase `nentered` before the other blocked threads woke and checked
`nentered % count == 0`.  Then the other blocked threads would check `nentered
% count == 0` and, finding it false, go back to sleep in the barrier.  This new
implementation waits for a looser condition to obtain so that threads don't go
back to sleep in the barrier.
2020-02-27 11:27:45 -06:00
David Young
11d22f3ea5 Test the right condition for the EBUSY return in pthread_barrier_destroy(). 2020-02-27 10:17:24 -06:00
David Young
802bf2dc1e s/exit_failure/EXIT_FAILURE/g 2020-02-27 10:16:49 -06:00
David Young
b87d9cb50e Implement pthread_barrier(3) for Darwin using a counter, condition variable,
and mutex.  Untested.
2020-02-26 20:38:57 -06:00
Allen Byrne
666205a55f TRILAB-142 Change minimum CMake version to 3.12 2020-02-21 16:16:06 -06:00
David Young
7b4131c2ae Merge pull request #2367 in HDFFV/hdf5 from ~DYOUNG/werror:unused to develop
* commit '50aac126d7c4082c2aeb0f3a68cad26bd1cd9783':
  Start to document the function/parameter/variable attribute macros.
  Filter all of the new _USED / _UNUSED type modifiers.
  H5_HAVE_PARALLEL, _DEBUG_API, etc.  Add attributes to some variables and parameters that are unused under some configurations.
2020-02-19 09:38:02 -06:00
David Young
b4697f9692 Use HD prefix. 2020-02-12 14:07:47 -06:00
David Young
f9a8fd5a4c H5_HAVE_PARALLEL, _DEBUG_API, etc. Add attributes to some variables and
parameters that are unused under some configurations.
2020-02-10 14:41:20 -06:00
David Young
c7ad81b0ea Provide local copies of err(3)- and errx(3)-alike functions
for Visual Studio compatibility.
2020-02-07 14:45:08 -06:00
David Young
8f77878953 Oops, the test has to return success in the unimplemented case. 2020-02-06 10:43:37 -06:00
David Young
cefacee21b src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.
test/thread_id.c: move threads_failure() inside #ifdefs.
2020-02-03 16:33:28 -06:00
David Young
a20b68b257 Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.
Fix a typo in the H5TS_thread_init() comment and reword some ID
properties.
2020-02-03 16:23:06 -06:00
David Young
65600cbd72 Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen's
request.
2020-02-03 12:59:52 -06:00
David Young
986c7451a0 Replace pthread_self_ulong() with H5TS_thread_id(). The POSIX Threads
implementation ought to be portable to any system that has POSIX
Threads.  On Windows, I use the same API call as before.
2020-02-03 11:59:14 -06:00
kmu
c586d91ea0 Merge branch 'develop' into misc 2020-01-29 14:03:48 -06:00
David Young
43d41633a1 Merge pull request #2318 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-1 to develop
* commit 'fa1b2f6ef35c459c9f74ead885c119ae7f61c056':
  Reduce differences between my -Werror branch and `develop`:
2020-01-29 13:51:52 -06:00
David Young
0d6e025888 Merge pull request #2320 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-2 to develop
* commit 'a5f236e83bdd29e660a55c5577a69a3809605cda':
  Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
2020-01-29 13:51:27 -06:00
David Young
1b49ccd7fa Merge pull request #2321 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-3 to develop
* commit 'f19e06b59ee53f17465a7b5974c25c3245a40d9a':
  testpar/t_2Gio.c: Fix a typo that I think was introduced by a         previous warnings PR.  An array element was assigned to         itself---shape[2]Â =Â shape[2];---instead of being assigned to         chunk[2].
2020-01-29 13:51:10 -06:00
kmu
0443c582d8 initialization discards const warning 2020-01-29 13:31:14 -06:00
David Young
f19e06b59e testpar/t_2Gio.c: Fix a typo that I think was introduced by a
previous warnings PR.  An array element was assigned to
        itself---shape[2]Â =Â shape[2];---instead of being assigned to
        chunk[2].

fortran/src/H5Pf.c: move conditional compilation controlled by
        H5_NO_DEPRECATED_SYMBOLS outside of a function for readability.

fortran/src/H5match_types.c: put a variable's declaration under the same
        conditional compilation (H5_FORTRAN_HAVE_C_LONG_DOUBLE) as its
        use.

For now, skip compilation of some unused debug dump routines in the JNI.
While I'm in the JNI, delete a set-but-unused variable.

src/H5Z.c: condition a variable declaration on H5_NO_DEPRECATED_SYMBOLS
        so that it's not declared but unused or vice versa.

test/cache_common.h: add an #include in to get some symbols we need to
        avoid implicit declaration warnings.

test/dsets.c: use a more conventional conditional-compilation syntax.

test/dt_arith.c, test/fillval.c: initialize a bunch of uninitialized
        variables before use.

test/vfd.c: pass the expected type of `void **` to posix_memalign(3)
        instead of `int **`.

testpar/t_bigio.c: explicitly compare with 0 instead of using ! when
        "equal to 0?" is the question not "is false?"  Repair some
        indentation while I'm here.

testpar/testpar.h: repair misaligned line-continuation backslashes in a
        macro that probably should be a function so that we don't have
        to fiddle with the line continuation to begin with.

tools/src/h5repack/h5repack_main.c: fix some compiler fussing about
        enums.

tools/test/perform/pio_engine.c: the compiler fusses if you cast a
        function call returning double directly to off_t.  It's ok if
        you cast a variable that's a double to off_t, however.  Write
        and use a new function, sqrto(), to avoid the cast warnings.
2020-01-29 11:44:39 -06:00
David Young
a5f236e83b Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
Reduce gratuitous casts---e.g., (size_t)1.

Use the right format string for a pointer.

In the H5C sanity checks, change a "size increase" variable from ssize_t
(too narrow) to int64_t (wide enough).

Parenthesize every appearance of `storage` in the macro
`H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an
expression like &sc and it works properly.

Disallow re-assignment of the `dset` parameter to H5D__chunk_init()
because it helped assure me that it's safe to replace the repeating
expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout.

Replace lengthy expressions such as
`&dset->shared->layout.storage.u.chunk` with `sc` throughout several
functions in H5Dchunk.c ISTR that the compiler warned that `sc` was
declared but unused in a couple of functions, and then I found that `sc`
could be used in many places.  Maybe the disused `sc` appeared because a
bunch of code was copied and pasted, I don't know.  Anyway, it's a lot
tighter code now that I use `sc`.

In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete()
I actually expand `sc` and another temporary variable, `pline`,
because they're used only in !defined(NDEBUG) code.  This squashes
unused-variable warnings in the defined(NDEBUG) configuration.

Don't drop the `volatile` qualification with a cast in
tools/src/h5import/h5import.c.
2020-01-29 10:47:30 -06:00
David Young
fa1b2f6ef3 Reduce differences between my -Werror branch and develop:
Rename index -> idx, fileno -> fnumber, fileno -> fno to avoid GCC
shadowed declaration warnings about index(3).

Convert #pragma GCC diagnostic push/pop/ignored to the HDF5 library's
H5_GCC_DIAG_OFF()/H5_GCC_DIAG_ON() macros.
2020-01-28 20:35:28 -06:00
Jordan Henderson
e41f671d2f Introduce new H5VL _by_value routines 2020-01-28 18:18:38 -06:00
kmu
684a9bd9cb Merge branch 'develop' into misc 2020-01-28 14:30:20 -06:00