Commit Graph

166 Commits

Author SHA1 Message Date
Larry Knox
11dfa25910
Update copyright headers (#2184)
* Updated source file copyright headers to remove "Copyright by the Board of Trustees
of the University of Illinois", which is kept in the top-level COPYING file.
2022-11-01 16:02:27 -05:00
Allen Byrne
ae414872f5
Develop clang 13 format (#1933)
* Update format source to clang 13

* More format changes
2022-07-26 14:45:46 -07:00
raylu-hdf
b2363a8195
H5Oflush fails for parallel (#1876)
* H5Oflush causes H5Fclose to trigger an assertion failure in metadata cache for parallel.  This commit makes sure H5Oflush fails for parallel until this problem is solved in the future.

* Committing clang-format changes

* Changed the use of H5F_get_driver_id to H5F_HAS_FEATURE.

Co-authored-by: songyulu <songyulu@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-12 08:55:34 -07:00
jhendersonHDF
2ba7a01bff
Fix some const cast and stack/static object size warnings (#1700)
* Fix various warnings

* Move HDfree_const to H5private.h for wider use

* Print output from all ranks in parallel tests on allocation failure

* Move const pointer freeing macro to h5test.h for now
2022-05-01 15:54:41 -05:00
Dana Robinson
d5c449248f
Brings the native implementation of H5Fdelete() from Bitbucket (#524)
* Committing clang-format changes

* Brings the native VFD H5Fdelete() implementation from Bitbucket

Only brings the 'del' callbacks, not the 'open/close' scheme.

* Formatter changes

* Committing clang-format changes

* Fixes direct VFD callback name

* Removes UNUSED macro from family API call

* Adds barrier and rank 0 check to MPI-I/O VFD delete

* Revert "Adds barrier and rank 0 check to MPI-I/O VFD delete"

This reverts commit 909765f759.

* Revert "Revert "Adds barrier and rank 0 check to MPI-I/O VFD delete""

This reverts commit 9b04bef115.

* Adds a second barrier after the delete in MPI-I/O VFD

* Only delete files in the core VFD when the backing store flag is set

* Fixes string issues in multi VFD

Also, h5test.c cleanup code now uses H5Fdelete().

* Formatted source

* Rework fapl checks for MPI-I/O VFD delete callback

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-16 13:47:32 -05:00
Quincey Koziol
cb0a883f6d
Minor parallel improvements (#519)
* Improve MPI error reporting, handled failed operations in parallel tests more nicely, and clean up MPI_Allreduce for determining whether to break collective I/O

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-26 15:14:09 -05:00
Larry Knox
2ea165efd0
Update license url part2 (#333)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING
    file - files not in src or test.
2021-02-17 08:52:36 -06:00
jhendersonHDF
afdb7903c6
Fix for HDFFV-11109 - Copy MPI comm and info object into output FAPL from H5F_get_access_plist (#342)
* Avoid freeing MPI_COMM_WORLD in H5_mpi_comm_free

* Copy MPI Comm and Info to new FAPL in H5F_get_access_plist
2021-02-17 06:37:23 -06:00
Allen Byrne
b2d661b508 Clang-format of source files 2020-09-30 09:27:10 -05:00
Allen Byrne
98c8c6e45b Mostly whitespace in testpar, addl changes for tmp dir 2019-08-15 10:28:40 -05:00
Larry Knox
8a4f679fda Combine "collective group and dataset write" and "independent group and
dataset read" tests into one test.  The second test is dependent on the
file created by the first test, and will not pass when run by itself.
2019-05-03 16:08:22 -05:00
Allen Byrne
813d8fd597 Add final list of single testphdf5 tests 2019-05-02 16:20:15 -05:00
Jordan Henderson
65a820ae89 Fix some collective metadata read issues 2019-02-11 18:31:23 -06:00
Jordan Henderson
4cd10fa88e Add fix for HDFFV-10501
Add test for HDFFV-10501 fix

Add release note for HDFFV-10501 fix
2018-08-25 22:54:30 -05: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
0313cbb91d Final merge of page buffering branch to develop 2017-03-13 21:30:37 -07:00
Neil Fortner
7de719287a [svn-r30270] Fix an issue that could occur when allocating a chunked dataset in parallel,
with an alignment threshold set to be larger than the chunk size but smaller
than the size of the small data aggregator.

Tested: koala, ostrich (h5committest); jelly, ummon
2016-08-08 16:56:50 -05: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
Quincey Koziol
b8f809981b [svn-r30112] Description:
Move updated flush dependency code in metadata cache from revise_chunks
branch to trunk.  Also many of the cleanups from r30111 in the revise_chunks
branch.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-06-28 16:39:09 -05:00
Allen Byrne
1bd3635781 [svn-r29880] Add HD to sleep function calls 2016-05-04 11:16:45 -05:00
Mohamad Chaarawi
d12a994986 [svn-r29088] - Add a test for retrieving the property values for the new coll md functions.
- ifdef some code that don't need to be built in parallel
- more minor enhancements

tested on bb-8 with parallel and serial
2016-02-11 11:03:44 -05:00
Mohamad Chaarawi
25f271d84b [svn-r29079] rename the coll read requirement function. 2016-02-10 13:19:12 -05:00
Quincey Koziol
c8a6c6030a [svn-r29077] Description:
Normalize against the trunk, in preparation for final merge.

Tested on:
    MacOSX/64 10.11.3 (amazon) w/serial & parallel
    (h5committest not required on this branch)
2016-02-10 12:55:55 -05:00
Mohamad Chaarawi
c3f08947c1 [svn-r28959] merge from trunk.
renaming metadata dxpl properties.
2016-01-22 11:56:09 -05:00
Mohamad Chaarawi
2824e6bef0 [svn-r28649] - add new API to toggle collective metadata write.
- set default to FALSE
- fix some bugs.
2015-12-14 14:53:31 -05:00
Mohamad Chaarawi
8d131aca15 [svn-r27929] merge from trunk. 2015-10-01 11:12:02 -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
Mohamad Chaarawi
cf07aa6803 [svn-r27261] apply metadata enhancement patch that was based on the mdc 3 branch. 2015-06-21 16:45:01 -05:00
Mohamad Chaarawi
cbd0460b1b [svn-r25921] - wrap MPI 3 usage with MPI_VERSION compile time check.
- build out unbuffered stdout/err for windows
2014-12-23 09:54:47 -05:00
Mohamad Chaarawi
87bed2c752 [svn-r25651] Fix for: HDFFV-8715
HDF5_PARAPREFIX is ignored in parallel dense attribute and performance tests.

tested on Jam w/ parallel.
2014-10-01 17:02:41 -05:00
Mohamad Chaarawi
8771fba1de [svn-r25503] - fix bug in encode/decode plist parallel test when 1 proccess is used to run the test.
- fix warning in t_chunk_alloc.
2014-08-01 14:24:52 -05:00
Mohamad Chaarawi
92cc75bfae [svn-r25401] add serial and parallel regression tests for zero dset read/write bug. 2014-07-09 14:01:25 -05:00
Quincey Koziol
2e4302818a [svn-r24864] Description:
Remove all traces of MPI-POSIX VFD and GPFS detection/code.

    Remove remaining traces of stream VFD.

    Remove testpar/t_posix_compliant test (it's not actually verifying anything).

    Clean up H5D__mpio_opt_possible() further.

    Moved environment variable that disables MPI collective operations into
MPI-IO VFD (instead of it being in src/H5S.c).

    A few other small code cleanups.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/parallel & serial
2014-03-21 18:02:24 -05:00
Mohamad Chaarawi
6ceb9711b8 [svn-r24612] fix bugs in parallel tests exposed in corner cases when running with 1
or 2 processes.

First bug is in testpar/t_mdset.c, where the test reports an error in
addition to skipping the test if there are less than three procs. Fix
to just skip the test.

Second bug is in testpar/t_dset.c in actual_io_mode tests, where
incorrect expected value for IO mode was set if the number of procs
running the test is 1.

tested with h5committest.
2014-01-06 12:56:45 -05:00
Quincey Koziol
b4331b2ff3 [svn-r23529] Description:
Stop aliasing property to indicate internal collective metadata operations
with property to perform collective raw data operations from the application.

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/paralllel
2013-04-02 21:50:50 -05:00
Jonathan Kim
51c5bf8aa7 [svn-r22992] Purpose:
HDFFV-8146 - Remove "multi-chunk IO without optimization" sub-feature from MPI I/O optimization for chunked dataset feature

Description:
  The “multi-chunk IO without optimization” feature is removed and made the related xfer property (H5FD_MPIO_CHUNK_MULTI_IO) go directly to “multi-chunk-io” feature.
  Also update/fix/cleanup testings (chunk collective IO and actual chunk opt mode) accordingly.
    
Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), fred (mac64-LE), Windows (32-LE cmake), cmake (jam)
2012-10-30 11:28:17 -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
Jonathan Kim
0aa8d4d88a [svn-r22735] Purpose:
HDFFV-8143 Provide a routine(s) for telling the user why the library broke collective data access

Description:
    Added H5Pget_mpio_no_collective_cause() function that retrive reasons why the collective I/O was broken during Read/Write IO access.
    Reasons to break collective I/O:
     - SET_INDEPENDENT
     - DATATYPE_CONVERSION
     - DATA_TRANSFORMS
     - MPIPOSIX
     - NOT_SIMPLE_OR_SCALAR_DATASPACES  (NULL Space)
     - POINT_SELECTIONS
     - NOT_CONTIGUOUS_OR_CHUNKED_DATASET  (Compact or External-Storage)
     - FILTERS  

Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2012-09-04 12:00:38 -05:00
Mohamad Chaarawi
c3247876b1 [svn-r22651] fix a bug that would skip or include the parallel atomicity test with cmd arguments -o or -x 2012-08-09 13:09:56 -05:00
Allen Byrne
5e388aa257 [svn-r22385] Skip tests using sparse file writes on Windows. JIRA issue (JIRA HDDFV-8064) created. 2012-05-21 15:37:19 -05:00
Quincey Koziol
c2a9dcb897 [svn-r22219] Description:
Merge "file image" changes from feature branch back to trunk.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug
    (h5committest upcoming)
2012-03-31 03:49:35 -05:00
Mohamad Chaarawi
dd1b2c3208 [svn-r22115] Add 2 new API routines to set/unset file atomicity for files opened with the MPI-IO VFD
Add test cases for these two routines
Jira issue HDFFV-7961
2012-03-21 16:00:48 -05:00
Quincey Koziol
3d15d9d681 [svn-r21442] Description:
Check in "actual I/O mode" feature to trunk.  Will merge back to 1.8 branch
after it bakes over the weekend.

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 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
    Linux/64-ia64 2.6 (ember) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
    Mac OS X/32 10.6.8 (amazon) in debug mode
    Mac OS X/32 10.6.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2011-09-30 20:37:23 -05:00
Allen Byrne
cfc3760808 [svn-r21334] HDFFV-7687: add HD macro prefrix to functions and use h5_stat_t where necessary
reviewed
2011-08-30 10:35:30 -05:00
Albert Cheng
e6622c86a8 [svn-r19959] Bug: the VRFY macro, for some reason, called MPI_Finalize() when it encountered
error and wanted to exit the test program. This was not good since if only a
subset of processes called MPI_Finalize(), the other processes will likely
hang.  That happened in AIX that it would waited till the alarm signal to kill
the processes. Definitely a waste of time.
Solution: Changed it to call MPI_Abort.

That showed another problem. HDF5 has setup atexit post-process to try to close
unclose objects, release resources, etc.  But if the MPI processes have
encountered an error and has been aborted, it is not likely any more MPI calls
can function properly. E.g., it would attempt to free some communicators in
the HDF5 MPIO file handle. It would again hang.
Solution: need to call H5dont_atexit() to disable any atexit post-processing.
This must be done early, like before calling H5open. This is added to each
parallel test main program.

testphdf5.h:
    Changed macros VRFY and MESG. Added comments too.

testphdf5.c:
t_mpi.c:
t_cache.c:
t_shapesame.c:
    Added H5dont_atexit.

Tested: h5committest.
2011-01-16 04:44:22 -05:00
Albert Cheng
2f54a4ba53 [svn-r19941] Purpose:
Moved the two shape same tests from testphdf5 to a separated executables,
named t_shapesame. The shape same tests runs too long for testphdf5.
In a separated executalbe, it will be easier to separate any errors in
testphdf5 sub-tests from the shape same tests.

t_shapesame.c:
   Contains the shape same tests (cloned from t_rank_projection.c) plus
   a duplicate of "testphdf5.c" for now. After verifying it is correct, more
   cleanup is needed.
testphdf5.c:
   Removed the two shape same tests (chsssdrpio & cbhsssdrpio).
Makefile.am:
Makefile.in:
   Added t_shapesame as a new test executable.
   Removed t_rank_projections.c from part of testphdf5.
testph5.sh.in:
   Temporary added the "t_shapesame -p" test for testing shape same tests
   with MPIO-Posix VFD.

Tested: h5committested, plus serial jam.
2011-01-11 23:38:59 -05:00
John Mainzer
f527b1a512 [svn-r19622] Port of fix for the round robin parallel flush bug caused by the failure
of the H5Ocache.c code to update its image of the on disk representation
of the object header on a call to the clear callback.

This wasn't an issue as long as all flushes of the object header were
made from the same process, but if an object header is modified, and
then flushed on one process and cleared on the rest, the changes were
not be reflected in the images of the on disk representation on all
processes where the object header was cleared rather than flushed.

If one of these processes did the next flush, the changes were lost in
the on disk representation.

Fixed this by causing all dirty messages and to be written to the copy
of the on disk image maintained by the object header code on both flush
and clear.

Also added associated test code in t_mdset.c.

Also checking in some cache debug code developed while chasing this bug.

Commit tested and tested (parallel) on phoenix.
2010-10-17 10:13:24 -05:00
Quincey Koziol
f82774c0d5 [svn-r19092] Description:
Bring "shape same" changes from LBL branch to trunk.  These changes
allow shapes that are the same, but projected into dataspaces with different
ranks to be detected correctly, and also contains code to project a dataspace
into greater/lesser number of dimensions, so the I/O can proceed in a faster
way.

	These changes also contain several bug fixes and _lots_ of code
cleanups to the MPI datatype creation code.

	Many other misc. code cleanup are included as well...

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) 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 (amani) 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, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.3 (amazon) in debug mode
        Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2010-07-19 00:05:45 -05:00
Quincey Koziol
347c41995b [svn-r17376] Description:
Make similar change to windows VFD as sec2 VFD, when converting from
a family file to a single file.

	Tweak file sizes expected for parallel tests.

Tested on:
	tg-login3, w/parallel
	Windows (post facto)
2009-08-18 15:22:14 -05:00
Christian Chilan
2c94653c7e [svn-r16770] Modified parallel tests so they can run with arbitrary number of processors.
Tested on jam and abe.
2009-04-16 20:32:13 -05:00