summaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* Move common variables out of cache test blocks (#4108)Dana Robinson2024-03-101-180/+187
| | | Fixes a stack size warning w/ XCode
* Minimize use of abort() (#4110)Dana Robinson2024-03-102-6/+4
| | | The abort() call is used at several places where it probably shouldn't.
* Refactor datatype conversion code to use pointers rather than IDs (#4104)jhendersonHDF2024-03-101-7/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | The datatype conversion code previously used IDs for the source and destination datatypes rather than pointers to the internal structures for those datatypes. This was mostly due to the need for an ID for these datatypes that can be passed to an application-registered datatype conversion function or datatype conversion exception function. However, using IDs internally caused a lot of unnecessary ID lookups and hurt performance of datatype conversions in general. This was especially problematic for compound datatype conversions, where the ID lookups were occuring on every member of every compound element of a dataset. The code has now been refactored to use pointers internally and only create IDs for datatypes when necessary. Fixed a test issue in dt_arith where a library datatype conversion function was being cast to an application conversion function. Since the two have different prototypes, this started failing after the parameters for a library conversion function changed from hid_t to H5T_t * and an extra parameter was added. This appears to have worked coincidentally in the past since the only different between a library conversion function and application conversion function was an extra DXPL parameter at the end of an application conversion function Fixed an issue where memory wasn't being freed in the h5fc_chk_idx test program. Even though the program exits quickly after allocating the memory, it still causes failures when testing with -fsanitize=address
* Clean up off_t usage (#4095)Dana Robinson2024-03-0913-40/+38
| | | | * Add comments to C++ and Fortran API calls that use off_t * Remove noise casts for small integers
* Expand check for variable-length or reference types when clearing datatype ↵jhendersonHDF2024-03-091-48/+147
| | | | | | conversion paths (#4085) When clearing out datatype conversion paths involving variable-length or reference datatypes on file close, also check for these datatypes inside compound or array datatypes
* Update long double test with correct values (#4060)Allen Byrne2024-03-081-0/+301
| | | Update long double test with correct values
* Fixed asserts due to H5Pset_est_link_info() values (#4081)Dana Robinson2024-03-081-0/+100
| | | | | | | | | | | | | | | | | | | | | | | * Fixed asserts due to H5Pset_est_link_info() values If large values for est_num_entries and/or est_name_len were passed to H5Pset_est_link_info(), the library would attempt to create an object header NIL message to reserve enough space to hold the links in compact form (i.e., concatenated), which could exceed allowable object header message size limits and trip asserts in the library. This bug only occurred when using the HDF5 1.8 file format or later and required the product of the two values to be ~64k more than the size of any links written to the group, which would cause the library to write out a too-large NIL spacer message to reserve the space for the unwritten links. The library now inspects the phase change values to see if the dataset is likely to be compact and checks the size to ensure any NIL spacer messages won't be larger than the library allows. Fixes GitHub #1632 * Fix copy-paste comments
* Close and reopen file during dset vlen IO API tests (#4050)mattjala2024-03-071-16/+186
| | | | | - Close/reopen file and file objects to prevent cache from being used instead of actual I/O. - Moved vlen io test datasets under the dset container group instead of the root group - Moved the PASSED() invocation to after individual test cleanup in case an error occurs during H5Treclaim
* Fix uninitialized bytes in selection I/O test (#4073)Dana Robinson2024-03-061-1/+4
| | | | | This was due to a complex type fill value being set to -1 instead of a proper complex value. This was a test problem and not a core library issue.
* Fix uninitialized bytes in cmpd_dset test (#4072)Dana Robinson2024-03-051-12/+23
| | | | | | | Compound fill values were set to the integer -1, causing valgrind to flag 'uninitialized bytes' errors. This is just a problem with the cmpd_dset test and not a core library problem.
* Fix a memory leak in the cmpd_dset test (#4071)Dana Robinson2024-03-051-24/+14
| | | | This was due to not freeing a test buffer. It was not a core library memory leak.
* Rename incorrectly named option (#4067)Allen Byrne2024-03-051-7/+7
| | | | | | | * Rename incorrectly named option * Restore the correct uses of USING_MEMCHECKER * Update release note
* Fix issue where H5Tset_fields does not account for datatype offsets (#4061)jhendersonHDF2024-03-051-0/+84
| | | | | H5Tset_fields did not account for any offset in a floating-point datatype, causing it to fail when a datatype's precision is correctly set such that it doesn't include the offset bits.
* Fix VOL-compatibility issues in External Link API test (#4039)mattjala2024-03-042-94/+283
| | | Fix link API tests with incorrect filename
* Fix issue with FAPL file locking setting inheriting test (#4053)jhendersonHDF2024-03-014-94/+184
| | | | | Fixes an issue where the HDF5_USE_FILE_LOCKING environment variable being set can interfere with the file locking setting that the test expects to be returned.
* Fix allocating too much memory in dset API test (#4041)mattjala2024-02-261-1/+1
|
* Improve performance of flushing single objects (#4017)Neil Fortner2024-02-233-1894/+396
| | | | | Improve performance of flushing a single object, and remove metadata cache flush markers
* Fix H5F_get_access_plist to copy file locking settings (#4030)jhendersonHDF2024-02-221-0/+196
| | | | | | H5F_get_access_plist previously did not copy over the file locking settings from a file into the new File Access Property List that it creates. This would make it difficult to match the file locking settings between an external file and its parent file.
* Test vlen sequence IO in API tests (#4027)mattjala2024-02-212-0/+485
|
* Remove oneapi return value warning. (#4028)H. Joe Lee2024-02-191-0/+1
|
* Add compound subset ops on attributes to API tests (#4005)mattjala2024-02-142-0/+269
| | | | * Add partial compound io on attributes to API tests
* Issue #1824: Replaced most remaining sprintf with safer snprint (#4003)Sean McBride2024-02-136-32/+29
|
* Fix build issue and some warnings in H5_api_dataset_test.c (#3998)jhendersonHDF2024-02-091-12/+5
|
* Sync API tests with vol-tests (#3940)mattjala2024-02-066-154/+1911
|
* Fix potential infinite loop in API test (#3960)mattjala2024-01-251-1/+1
|
* Remove cached datatype conversion path table entries on file close (#3942)jhendersonHDF2024-01-231-0/+190
| | | | | | | | | | | | | | | | | | | | Remove cached datatype conversion path table entries on file close When performing datatype conversions during I/O, the library checks to see whether it can re-use a cached datatype conversion pathway by performing comparisons between the source and destination datatypes of the current operation and the source and destination datatypes associated with each cached datatype conversion pathway. For variable-length and reference datatypes, a comparison is made between the VOL object for the file associated with these datatypes, which may change as a file is closed and reopened. In workflows involving a loop that opens a file, performs I/O on an object with a variable-length or reference datatype and then closes the file, this can lead to constant memory usage growth as the library compares the file VOL objects between the datatypes as different and adds a new cached conversion pathway entry on each iteration during I/O. This is now fixed by clearing out any cached conversion pathway entries for variable-length or reference datatypes associated with a particular file when that file is closed.
* Add the user test program in HDFFV-9174 for committed types. (#3937)vchoi-hdfgroup2024-01-231-0/+169
| | | Add the user test program for committed types in HDFFV-9174
* Replace off_t with HDoff_t internally (#3944)Dana Robinson2024-01-181-9/+9
| | | | | | off_t is a 32-bit signed value on Windows, so we should use HDoff_t (which is __int64 on Windows) internally instead. Also defines HDftell on Windows to be _ftelli64().
* Add H5Dread/write_multi to API tests (#3919)mattjala2024-01-062-0/+1541
|
* Use props for includes and remove global includes (#3921)Allen Byrne2024-01-041-3/+0
|
* Add 'warning density' computation to the warnhist script (#3910)Quincey Koziol2023-12-291-2/+2
| | | | | | | | | * Add 'warning density' computation to the warnhist script, along with several cleanups to it. Add "--enable-show-all-warnings" configure (and CMake) option to disable compiler diagnostic suppression (and therefore show all the otherwise suppressed compiler diagnostics), disabled by default. Clean up a buncn of misc. warnings. Signed-off-by: Quincey Koziol <qkoziol@amazon.com>
* Some changes to portal links when they could be found on docs.hdfgroup.org, ↵Lori Cooper2023-12-131-2/+2
| | | | | | | and changed the helpdesk link to help.hdfgroup.org (#3893) * Updated some portal links to go directly to docs.hdfgroup. * Fixed some portal and help desk links
* Fix configuration issue due to possibly empty CMake variable (#3869)jhendersonHDF2023-11-241-4/+4
|
* Fix segfault on user compound dtype conversion callback (#3842)mattjala2023-11-221-0/+125
| | | | | | * Fix segfault on user compound conversion * Check if lib conversion func is in use
* Add HDF5_DISABLE_TESTS_REGEX option to skip tests (#3859)Allen Byrne2023-11-226-230/+304
|
* Add GitHub actions for testing VOL connectors (#3849)jhendersonHDF2023-11-153-68/+25
| | | | | | | | | | | | | | | | * Fix issue with HDF5_VOL_ALLOW_EXTERNAL CMake variable * Add initial API test workflow * Initialize parallel testing with MPI_THREAD_MULTIPLE when testing API * Add CMake variable to allow specifying a VOL connector's package name * Remove call to MPI_Init in serial API tests While previously necessary, it now interferes with VOL connectors that may need to be initialized with MPI_THREAD_MULTIPLE
* HDF5 API test updates (#3835)jhendersonHDF2023-11-1337-68890/+3328
| | | | | | | | | | | | | | | | | | | | | * HDF5 API test updates Removed test duplication from bringing API tests back into the library from external VOL tests repo Synced changes between API tests and library's tests Updated API tests CMake code to directly use and install testhdf5, testphdf5, etc. instead of creating duplicate binaries Added new h5_using_native_vol() test function to determine whether the VOL connector being used is (or the VOL connector stack being used resolves to) the native VOL connector * Remove duplicate variable
* Test and document path handling of H5Lcreate_* API (#3829)mattjala2023-11-111-0/+250
|
* Remove printf format warning on Windows oneAPI. (#3838)H. Joe Lee2023-11-101-1/+1
|
* Fix parallel driver check in h5_fixname_real (#3808)jhendersonHDF2023-10-311-5/+3
|
* Print some messages in parallel tests on MPI rank 0 only (#3785)jhendersonHDF2023-10-282-48/+64
| | | Avoids overly verbose output from all processes emitting progress, etc. info.
* Fix H5Pset_evict_on_close failing regardless of actual parallel use (#3761)Glenn Song2023-10-241-92/+0
| | | | | Allow H5Pset_evict_on_close to be called regardless of whether a parallel build of HDF5 is being used Fail during file opens if H5Pset_evict_on_close has been set to true on the given File Access Property List and the size of the MPI communicator being used is greater than 1
* Fix file names in tfile.c (#3743)Dana Robinson2023-10-222-5/+18
| | | | | | | | | | | Some tests in tfile.c use h5_fileaccess to get a VFD-dependent file name but use the scheme from testhdf5, reusing the FILE1 and FILE8 names. This leads to files like test1.h5.h5 which are unintended and not cleaned up. This changes the filename scheme for a few tests to work with h5test, resulting in more informative names and allowing the files to be cleaned up at the end of the test. The test files have also been added to the `make clean` target for the Autotools.
* Clean the flushrefresh test dir on Autotools (#3741)Dana Robinson2023-10-211-1/+1
| | | | The flushrefresh_test directory was not being cleaned up w/ `make clean` under the Autotools
* Add missing test files to distclean target (#3734)Dana Robinson2023-10-201-2/+5
| | | Cleans up new files in Autotools `make distclean` in the test directory
* Add new API function H5Pget_actual_select_io_mode() (#2974)Neil Fortner2023-10-201-267/+330
| | | This function allows the user to determine if the library performed selection I/O, vector I/O, or scalar (legacy) I/O during the last HDF5 operation performed with the provided DXPL. Expanded existing tests to check this functionality.
* Fix CMake VOL passthrough tests by copying files to correct directory (#3721)jhendersonHDF2023-10-191-3/+3
|
* Work around Theta system issue failure in links test (#3710)jhendersonHDF2023-10-181-35/+21
| | | | | | | | When the Subfiling VFD is enabled, the links test may try to initialize the Subfiling VFD and call MPI_Init_thread. On Theta, this appears to have an issue that will cause the links test to fail. Reworked the test to check for the same conditions in a more roundabout way that doesn't involved initializing the Subfiling VFD
* Correct ld in format strings in cmpd_dset.c (#3697)H. Joe Lee2023-10-181-2/+4
| | | | Removes clang warnings
* Restore floating-point suffixes in tests (#3698)Dana Robinson2023-10-171-6/+6
| | | | A prior commit removed too many F suffixes. This restores the suffixes for float variables.