Commit Graph

111 Commits

Author SHA1 Message Date
Allen Byrne
b2d661b508 Clang-format of source files 2020-09-30 09:27:10 -05:00
Dana Robinson
5ce2a17804 Removes staff email addresses from the repository
Removes redundant C library headers from hl library
2020-08-06 17:58:07 -07:00
Dana Robinson
bc1bed2c55 Squash merge of file locking fixes 2020-08-03 09:11:27 -07:00
Jacob Smith
e1215177b6 * Fix intermittent error with Splitter VFD.
Mismatch in time of test file creation was creating false negatives.

    Add file-duplication routine: `h5_duplicate_file_by_bytes()`.

* Change library calls in `h5test.c:h5_compare_file_bytes()` to their HD-prefixed equivalents.
2020-06-25 12:24:05 -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
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
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
Allen Byrne
64e6665b54 Add HD prefix to tests 2019-08-15 16:46:15 -05:00
Quincey Koziol
3b594992d6 Add support for GCC9, update warnhist script, and clean up warnings. 2019-07-02 23:43:45 -05:00
Dana Robinson
568c3624de Improvements to the H5Fis_accessible() and H5Fis_hdf5() tests
in tfile.c.
* General code tidying.
* Expanded tests to work with multi-file VFDs.
2019-04-25 01:07:42 -07:00
Vailin Choi
0073f19897 Set V112 as the latest format and extend the arrays of version bounds. 2019-04-04 16:29:37 -05:00
Quincey Koziol
deeb302747 Specify the default VOL connector to use with an environment variable.
This implicitly adds support for changing the VOL connector for command-line
tools or any application linked with the library.

Also, add 'make check-vol' support for all directories, clearing up necessary
issues in testing scripts, etc.
2019-03-09 21:41:38 -06:00
Jordan Henderson
0bc3d1567b Merge pull request #1434 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'fe6bed2ad722578d0b701e29d22f591923d2fe9f':
  Fix TESTING_2 macro to align output with TESTING macro
2019-01-07 14:11:07 -06:00
Jordan Henderson
fe6bed2ad7 Fix TESTING_2 macro to align output with TESTING macro
Add more indentation to TESTING_2 macro
2019-01-07 14:08:34 -06:00
Quincey Koziol
92300f954f Corrected comment in src/H5VLint.c, fixed pass-through info size in
src/H5VLpassthru.c, switched to stashing VOL connector ID & info in
API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and
src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work
with 'check-vfd' (and 'check-vol' again).
2019-01-05 23:06:45 -06:00
Quincey Koziol
6eabeabdaa Refactor infrastructure for setting FAPL information from environment
variables during testing, including connecting native, pass-through, and
dynamically loaded VOL connectors.   Also bring native and pass-through
VOL connectors into alignment, removing the "H5VLnative_private.h" header.
2018-11-28 17:38:03 -06:00
Dana Robinson
e962df1591 VOL FEATURE 2018-10-10 08:10:15 -07:00
Allen Byrne
205d33f332 Cleanup overuse of include files 2018-02-14 10:08:09 -06:00
Dana Robinson
b6944aeb2a Added a test for VFD IDs to testhdf5.
This required adding some code to generate a fake VFD class
to pass to H5FDregister().

Also, a bunch of whitespace and comment tidying.
2017-06-30 18:35:09 -07:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
Quincey Koziol
eefddf2813 Bring new/updated tests from revise+chunks branch: flush1/flush2 update and
flushrefresh test.  (Also refactor of message send / wait code)
2016-12-19 20:44:54 -08:00
Quincey Koziol
d3b724f86a [svn-r30201] Description:
Switch test framework to dynamically allocate the testing array, and
expand the length of the description field.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial & parallel
    (h5committest forthcoming)
2016-07-18 17:36:44 -05:00
Dana Robinson
e43c97fdb2 [svn-r29132] Added new single-responsibility functions to h5test.c/h that can
replace functions like h5_clean_files() that also do things like
reset the error handler and close fapls.

Existing tests have not yet been updated to use these new
functions.

Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1
           autotools serial
2016-02-16 23:30:49 -05:00
Quincey Koziol
0695d6366a [svn-r27835] Description:
Sync w/trunk.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    (h5committest not required on this branch)
2015-09-20 21:18:45 -05:00
Quincey Koziol
1023374492 [svn-r27768] Description:
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.

    This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.

    Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros.  (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)

    Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/64 3.10.x (kituo) w/serial & parallel
    Linux/64 2.6.x (ostrich) w/serial
2015-09-13 22:58:59 -05:00
Neil Fortner
a8fc7eeaec [svn-r27420] Fixed VDS test to handle the family driver correctly.
Tested: ummon
2015-07-21 12:14:26 -05:00
Neil Fortner
99a90f7fd6 [svn-r27419] Merge revisions 27394 through 27418 from trunk to vds branch.
Tested: ummon
2015-07-21 12:00:31 -05:00
Dana Robinson
94a6e02b3d [svn-r27407] Updated the H5_ATTR_* macros.
- Updated the preprocessor logic that defines the H5_ATTR_* macros. The Solaris
  Studio compiler understands __attribute__ but not the specific attributes
  that we use. The H5_ATTR_* macros are now defined as blank with that
  compiler which significantly cleans up the warnings, making debugging
  easier.

- Replaced a few lingering __attribute__ macros with H5_ATTR_* markup.

Tested on: h5committest
           Solaris w/ Solaris Studio (emu)
2015-07-18 00:40:06 -05:00
Neil Fortner
6063aa87e1 [svn-r27256] Merge revisions 27102 through 27255 from trunk to vds branch.
Tested: ummon
2015-06-19 17:16:45 -05:00
Quincey Koziol
adbb64c6cd [svn-r27204] Description:
Clean up compiler warnings before merging in v3 metadata cache changes
from branch.

Tested on:
    MacOSX/64 10.10.3 (amazon) w/serial & parallel
    Linux/32 2.6.x (jam) w/serial & parallel
2015-06-15 11:07:38 -05:00
Neil Fortner
c27904bc5f [svn-r27153] Implement fill value support for VDS.
Add testing for this.
Fix bug in printf string parsing.
Add test for this.
Other minor fixes/cleanup.

Tested: ummon
2015-06-05 16:55:24 -05:00
Neil Fortner
5d12a79db2 [svn-r27145] Add some testing for printf-style source dataset name resolution.
Various bug fixes, including a temporary fix for printf with FIRST_MISSING view.
Other cleanup.

Tested: ummon
2015-06-03 13:00:58 -05:00
Mohamad Chaarawi
26400c392b [svn-r25659] fix filename generation with prefix for perf test.
tested h5commitest, jam & platypus parallel.
2014-10-02 10:56:09 -05:00
Quincey Koziol
6a89177036 [svn-r22807] Description:
Add encode/decode API routines for property lists: H5Pencode/H5Pdecode.

Tested on:
        FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
        FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (koala) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (ostrich) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (ember) w/Intel compilers, w/parallel, C++ & FORTRAN,
                in production mode
        Mac OS X/32 10.7.3 (amazon) in debug mode
        Mac OS X/32 10.7.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.7.3 (amazon) w/parallel, in debug mode
2012-09-25 10:47:25 -05:00
Quincey Koziol
602c716f76 [svn-r22758] Description:
Bring generic improvements from encode/decode property list branch to
the trunk.  This includes a better version of the property list comparison
routine, cleaned up compiler warnings, and some cleaned up property list
callbacks.  Also, started on changes to clean up parallel test output, so that
it doesn't report successful tests from each process.

Tested on:
    Mac OSX/64 10.7.4 (amazon) w/debug, GCC 4.7.x, FORTRAN, C++, threadsafe and parallel
    Linux 2.6/32 (jam) w/debug
    Solaris 2.7/64 (linew) w/debug
2012-09-13 12:08:01 -05:00
Quincey Koziol
a056968dbd [svn-r21934] Description:
Remove some leftover uses of the __FUNCTION__ macro, replacing them with
FUNC macro, as used everywhere else.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
    (too minor to require h5committest)
2012-02-13 10:31:35 -05:00
Allen Byrne
df6eecae77 [svn-r21712] Change export decoration for windows linking. 2011-11-04 08:40:10 -05:00
Quincey Koziol
9fa5dca9c2 [svn-r21561] Description:
Correct error in loading local heap prefix & data block from the file.
Sometimes the local heap's prefix could be loaded before the data block (e.g.
using H5Oget_info), but then when the data block was loaded later, the free
list information would get lost, causing the heap's size to grow larger than
necessary.  This is Jira bug #HDFFV-7767

Tested on:
    Mac OS X/32 10.7.2 (amazon) w/debug
    (h5committest coming up)
2011-10-14 08:28:23 -05:00
Neil Fortner
7610dd20af [svn-r20529] Purpose: Add testing for bug 1864
Description:
Added internal tesitng routines to traverse a file and verify that symbol table
information is *always* cached, whenever possible.  Added this check to the end
of many tests to check all the test files, right before the call to h5_cleanup.

Tested: jam, amani, heiwa (h5committest)
2011-04-15 17:05:23 -05:00
Allen Byrne
ac9e605b8e [svn-r20316] Removed includes which are included with proper config checks in h5private.h.
Tested: local linux, windows
2011-03-24 14:26:19 -05:00
Allen Byrne
218eecfb34 [svn-r19829] Fixed the name of the windows linkage define in the test header. This corrects the
inconsistent dll linkage warning and matches the other linkage defines. Changed H5_DLLVAR to H5TEST_DLLVAR. 

Tested: windows
2010-11-19 12:45:55 -05:00
Quincey Koziol
771a850c58 [svn-r19242] Description:
Add in override for testing timeout alarm to allow "HDF5_ALARM_SECONDS"
environment variable to change the timeout value from the default value.

Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug & production
    (Too minor to require h5committest)
2010-08-16 16:04:53 -05:00
Albert Cheng
063e4b2e2e [svn-r19230] Reset alarm_seconds back to 20 minutes.
Description:
honest3 v1.8 failed in parallel test.  It got stuck in the same
testpar/testphdf5 subtest (cbhsssdrpio).  This is an old problem.
Upon closer inspection, the testphdf5, when terminated, had clocked
up 1hr 9min 46 sec wall clock time.  Honest1 system also sent a message
that an mpi process has used up 30+ CPU minutes which exceeded their login
node cpu time limit and they killed the process.  I also did a hand-run
of testphdf5. All subtests before cbhsssdrpio completed in a few minutes.
Therefore, it is safe to say the majority of the 70 minutes of wall clock
time are spent in the sub-test cbhsssdrpio. It also used up lots of CPU
time.  cbhsssdrpio is likely infinite looping.

Since MPI application is prone to infinite looping due to message deadlock,
the testphdf5 has a built-in protection to give each subtest at most 20 minutes
of wall-clock time to run.  When the 20 minutes wall-clock time is exceeded,
the testphdf5 will attempt to terminate itself.  This prevents unnecessary
CPU time consumption in infinite looping.

But that clock limit was changed to 30 and then 60 minutes.  I should have
but failed to, noticed the change mentioned by Quincey.  IMO, 20 wall clock
time is more than sufficient for each subtest of testphdf5 to complete.
If a subtest takes longer than 20 minutes, it is likely infinite looping.
Giving it more time will not help.

If a subtest of testphdf5 takes more than 20 minutes, it should be broken
down to small tests that will finish way under 20 minutes so that it is 
much easier to see progress and identify any deadlock problems.

In view of this, I am changing the testphdf5 time limit back to 20 minutes.
This will at least stop the CPU TIME exceeding limits and annoying the
system administrators.

Maybe there could be a provision, such as environment variable like
$HDF5_ALARM_SECOND to modify the alarm duration on individual execution.
Even so, that should be used temporary to see if an execution just needs
a little more time.

Tested: just eyeballed as the change is trivia.
2010-08-11 13:12:45 -05:00
Quincey Koziol
cba920a036 [svn-r19120] Description:
Bump the testing timer value from 30 to 60 minutes.

Tested on:
	None, just eyeballed, too simple to require test
2010-07-22 08:13:15 -05:00
Quincey Koziol
a67794b1bc [svn-r19099] Description:
Fix const pointer issues for projection construction routine and also
bump time before alarm kicks in to terminate a test from 20 minutes to 30
minutes, to give the PGI compiler tests w/debugging enabled a chance to finish.

Tested on:
	Mac OS X/32 10.6.4 (amazon) w/debug
	Linux/32 2.6.18 (jam) w/PGI & debug
2010-07-19 12:53:10 -05:00
Quincey Koziol
bcd6c3f7cc [svn-r18420] Description:
Re-run bin/reconfigure to catch up with recent rearrangements, remove some
unused srcdir headers and duplicated code in main test header.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug & prod
    Linux/32 2.6 (jam)
2010-03-18 07:45:29 -05:00
Quincey Koziol
cd2534d9ba [svn-r18418] Description:
Centralize common code for srcdir lookups.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug & prod
    Linux/32 2.6 (jam)
2010-03-18 07:04:39 -05:00
Quincey Koziol
fd547cd11f [svn-r18413] Description:
Unify srcdir handling for test executables and allow them to use the srcdir
setting from configure time without requiring the 'srcdir' environment variable
be set (although you still can, to override the built in setting).  Attempted
to get this right for Windows builds also.

    Also add dependency between src/H5Tinit.c and src/libhdf5.settings, so
that the test/testcheck_version.sh script works correctly.

Tested on:
    Linux/32 2.6 (jam)
    Mac OS X/32 10.6.2 (amazon)
2010-03-17 16:38:20 -05:00
Quincey Koziol
fd70b2afa8 [svn-r18197] Description:
Trim trailing whitespace from source code files with this command:

find . \( -name "*.[ch]" -or -name "*.cpp" -or -name "*.f90" \) -print |xargs -n 1 sed -i "" 's/[[:blank:]]*$//'

Tested on:
    None - eyeballed only
2010-01-29 23:29:13 -05:00