summaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* Modified page buffer to split entries only where necessary -- specificallymainzer2020-05-211-50/+1456
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when handling an I/O request on a metadata entry that has been sub-allocated from a larger file space allocation (i.e. fixed and extensible array), and that crosses at least one page boundary. . This required modifying the metadata cache to provide the type of the metadata cache entry in the current I/O request. For now, this is done with a function call. Once we are sure this works, it may be appropriate to convert this to a macro, or to add a flags parameter to the H5F block read/write calls. Also updated the metadata cache to report whether a read request is speculative -- again via a function call. This allowed me to remove the last address static variable in the H5PB_read() call, which is necessary to support multiple files opened in VFD SWMR mode. Also re-wrote the H5PB_remove_entries() call to handle release of large metadata file space allocations that have been sub-allocated into multiple metadata entries. Also modified the call to H5PB_remove_entries() in H5MF__xfree_impl() to invoke it whenever the page buffer is enabled and the size of the space to be freed is of page size or larger. Tested serial / debug on charis and Jelly. Found a bug in H5MF_xfree_impl(), in which the call to H5PB_remove_entries() is skipped due to HGOTO_DONE calls earlier in the function. While the obvious action is to move the call earlier in the function, best to consult with Vailin first, as there is much going on and it would be best to avoid making the situation worse. If nothing else, there are some error management issues.
* Rebase repair: add stubs.c back to the test library sources.David Young2020-05-201-1/+1
|
* Reduce diffs with `develop`.David Young2020-05-201-1/+1
|
* Reduce diffs with `develop`, where `H5C_move_entry` takes an `H5C_t *`David Young2020-05-203-20/+17
| | | | argument, first, not `H5F_t *`.
* Reduce diffs with `develop`.David Young2020-05-201-10/+10
|
* Reduce diffs with `develop`.David Young2020-05-203-7/+6
|
* Use H5_ATTR_NDEBUG_UNUSED instead of H5_ATTR_SANITY_CHECK.David Young2020-05-201-1/+1
|
* Fix compilation: use H5Oget_info() instead of specifying the versionDavid Young2020-05-201-4/+4
| | | | (H5O_getinfo2).
* Misc warning fixes.Dana Robinson2020-05-204-18/+39
|
* Align contents of CMake and autotools testfile cleanup lists.Quincey Koziol2020-05-202-90/+49
|
* Avoid allocating a chunk index for datasets with 0-sized dimensions, untilQuincey Koziol2020-05-202-20/+214
| | | | the dataset is extended.
* Updates to tools warning PR from code review.Dana Robinson2020-05-201-4/+4
|
* Fixes for warnings in the tools code.Dana Robinson2020-05-201-0/+59
|
* For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAXDavid Young2020-05-201-2/+2
| | | | instead of "%ju".
* Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointerDavid Young2020-05-201-2/+2
| | | | | | | 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]`.
* Trim trailing whitespaceQuincey Koziol2020-05-2067-509/+509
|
* Tidying of Mirror VFD.Jacob Smith2020-05-203-30/+51
| | | | | | | * 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.
* Add Splitter VFD to library.Jacob Smith2020-05-2013-557/+5011
| | | | | | | | | | | | | | | * "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).
* Modifications based on PR review feedback.vchoi2020-05-201-71/+51
|
* Add two routines gen_ref_files() and gen_sel_files() to generate test files ↵vchoi2020-05-201-0/+573
| | | | | | | related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
* Minor updates and fix settings for fortran flagsAllen Byrne2020-05-201-1/+0
|
* TRILAB-192 add c++ and fortran warnings build systems one fileAllen Byrne2020-05-201-3/+15
|
* A fix in the cleaning up code for datatype when datatype initialization via ↵vchoi2020-05-201-348/+388
| | | | | | | | | | 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().
* Refactor to reduce verbosity.Quincey Koziol2020-05-201-55/+33
|
* Correct macro checkQuincey Koziol2020-05-201-1/+1
|
* Correct failure when allocation tracking are disabled.Quincey Koziol2020-05-201-0/+12
|
* Revise API for H5get_alloc_stats() to take a struct instead of separate values.Quincey Koziol2020-05-201-38/+30
|
* Add routines to query the library's free list sizes and allocation stats.Quincey Koziol2020-05-201-0/+139
|
* Fix threadsafe for new testAllen Byrne2020-05-201-1/+20
|
* Complete the comment on thread_main(), explaining why the barrier is used.David Young2020-05-201-1/+9
|
* The first implementation seemed to allow for the possibility that a threadDavid Young2020-05-201-1/+8
| | | | | | | | | 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.
* Test the right condition for the EBUSY return in pthread_barrier_destroy().David Young2020-05-201-1/+1
|
* s/exit_failure/EXIT_FAILURE/gDavid Young2020-05-201-2/+2
|
* Implement pthread_barrier(3) for Darwin using a counter, condition variable,David Young2020-05-201-0/+123
| | | | and mutex. Untested.
* TRILAB-142 Change minimum CMake version to 3.12Allen Byrne2020-05-201-1/+1
|
* H5_HAVE_PARALLEL, _DEBUG_API, etc. Add attributes to some variables andDavid Young2020-05-205-8/+9
| | | | parameters that are unused under some configurations.
* Use HD prefix.David Young2020-05-201-13/+13
|
* Provide local copies of err(3)- and errx(3)-alike functionsDavid Young2020-05-201-7/+37
| | | | for Visual Studio compatibility.
* Take out the temporary performance tests.David Young2020-05-203-89/+0
|
* Make calls through a function pointer. Use the same number of arguments,David Young2020-05-201-18/+26
| | | | always.
* Increase iterations, provide a baseline for no-op, simplify the overheadDavid Young2020-05-201-4/+10
| | | | case a bit.
* Temporarily add some code that measures the time to run the simplest possibleDavid Young2020-05-203-0/+75
| | | | | H5T__copy_all()-like routine 10 million times and then measures the version with FUNC_ENTER_STATIC/_LEAVE_NOAPI and a HGOTO_ERROR() statement.
* Oops, the test has to return success in the unimplemented case.David Young2020-05-201-3/+2
|
* src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.David Young2020-05-201-2/+2
| | | | test/thread_id.c: move threads_failure() inside #ifdefs.
* Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.David Young2020-05-202-6/+7
| | | | | Fix a typo in the H5TS_thread_init() comment and reword some ID properties.
* Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen'sDavid Young2020-05-201-0/+1
| | | | request.
* Replace pthread_self_ulong() with H5TS_thread_id(). The POSIX ThreadsDavid Young2020-05-203-4/+164
| | | | | implementation ought to be portable to any system that has POSIX Threads. On Windows, I use the same API call as before.
* Reduce differences between my -Werror branch and `develop`:David Young2020-05-206-27/+18
| | | | | | | | 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.
* Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.David Young2020-05-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* testpar/t_2Gio.c: Fix a typo that I think was introduced by aDavid Young2020-05-205-25/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.