Commit Graph

39 Commits

Author SHA1 Message Date
jhendersonHDF
b1e07c74fd
Switch parallel compression to use vector I/O (#3245)
Updates parallel compression feature to use vector I/O instead of
creating and passing down MPI derived types to VFD
2023-08-01 23:01:01 -05:00
Dana Robinson
fd933f30b1
Remove programmer/date from comments (#3210)
* Removes Programmer: and Date: fields
* Fixes a few Modifications: fields leftover from previous work
2023-06-29 12:13:29 -07:00
Dana Robinson
7a44581a84
Rename HDassert() to assert() (#3191)
* Change HDassert to assert

* Fix bin/make_err
2023-06-28 07:31:56 -07:00
Dana Robinson
ef24087b17
Remove H5F_evict_tagged_metadata() (#3165)
The rest of the library just calls H5AC_evict_tagged_metadata()
directly.
2023-06-21 11:00:14 -07:00
Sean McBride
68eba3da69
Many clang -Wextra-semi-stmt fixes (#2537)
* Adds semicolons to function-like macros
* Adds a do..while(0) loop to some macros
* Removes semicolons when inappropriate, especially H5E_TRY_BEGIN/END
2023-06-15 21:49:02 -07:00
Dana Robinson
7ecf1d09af
Convert H5F haddr_t macros to H5 (#3039)
Several macros for handling haddr_t values exist in H5Fprivate.h
and have H5F prefixes, even though they have nothing to do with
a particular file (e.g., H5F_addr_lt()).

These macros have been moved to H5private.h and renamed to have
an H5 prefix.

Affected macros:
    H5F_addr_overflow
    H5F_addr_defined
    H5F_addr_eq
    H5F_addr_ne
    H5F_addr_lt
    H5F_addr_le
    H5F_addr_gt
    H5F_addr_ge
    H5F_addr_cmp
    H5F_addr_overlap

H5F_addr_pow2 was unused and removed instead of converted.
2023-06-05 08:04:56 -07:00
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
jhendersonHDF
7983a584a0
Switch to vector I/O for collective metadata writes (#1911)
* Switch to vector I/O for collective metadata writes

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-22 13:03:44 -07:00
Neil Fortner
42b767fc67
Merge initial version of selection I/O feature into develop (#1367) 2022-03-26 14:30:53 -05:00
Larry Knox
4819f89d3f
Update license url (#332)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING
file - src and test directories.
2021-02-17 08:52:04 -06:00
Allen Byrne
b2d661b508 Clang-format of source files 2020-09-30 09:27:10 -05:00
Quincey Koziol
07e4ef9da4 Clean up private / package / static namespace issues (function naming, which
header file, FUNC_ENTER / LEAVE, etc).  Removed remaining personal email
addresses from library source code (still needs cleaned from other directories).
Misc. warning, style, and whitespace cleanup.
2020-08-06 15:56:04 -05:00
Quincey Koziol
c36d2eeae7 Switch shared file struct name from 'H5F_file_t' to 'H5F_shared_t', to match
naming convention for shared structs in rest of library data structures.
2019-08-22 13:28:20 -05:00
Quincey Koziol
67d7d28c03 Begin converting dataset code to use shared file pointer instead of top file
pointer.
2019-08-20 18:21:53 -05:00
Quincey Koziol
25f982abbd Finish converting H5PB_* routines to use shared file pointer, instead of top
file pointer.
2019-08-20 17:26:10 -05:00
Quincey Koziol
f285c76ef2 First pass of converting H5PB_* routines to use shared file pointers. 2019-08-19 18:48:06 -05:00
Quincey Koziol
85a56a9c4f Partial H5F__accum_* routines. 2019-08-19 17:47:28 -05:00
Dana Robinson
a56b4db4ae Remainder of vol_normalization changes (dataset, attribute, files, objects). 2018-09-24 12:23:41 -07:00
Quincey Koziol
4a17aff408 Add API context interface and use it throughout the library. 2018-03-15 16: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
Quincey Koziol
4fad103187 Bring changes to I/O parameters from page_buffering branch. 2017-03-13 08:21:28 -07:00
Quincey Koziol
349f41d974 Switch list lengths to unsigned integers (to align better w/cache image merge) 2017-01-27 20:35:14 -08:00
Quincey Koziol
64a339183f Bring SWMR support in to the main development branch. (Finally!) More tests
and the tool and API wrappers will be coming in over the weekend.
2016-12-02 08:07:04 -08:00
Quincey Koziol
3b0c2b24da Bring over support for retrying metadata cache entry loads, along with all the
supporting metadata cache callback changes, etc.
2016-11-20 04:24:57 -08:00
Dana Robinson
29cb102f12 [svn-r30104] Fixes evict-on-close feature by propagating global
flush flag up the function call stack and not setting
it during H5Dclose().
2016-06-24 17:19:09 -05:00
Quincey Koziol
d3396a7953 [svn-r30075] Description:
Bring object/dataset/group/named datatype features from revise_chunks
branch to trunk.  Also CMake support for h5format_convert and a bunch of
misc. cleanups.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-06-14 18:07:03 -05:00
Quincey Koziol
a6ce3d4e45 [svn-r29850] Description:
Bring H5DOappend(), H5P[s|g]et_object_flush_cb, and H5P[s|g]et_append_flush
from revise_chunks branch to trunk.  Brings along updated metadata cache
entry tagging, and the internal object flush routine.

Tested on:
    MacOSX/64 10.11.4 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-05-01 05:24:56 -05:00
Mohamad Chaarawi
48bebcc39e [svn-r29057] added dxpl type checking when debug mode is enabled (H5_DEBUG_BUILD)
tested on bb-8 with Serial and Parallel, debug and production builds.
2016-02-07 10:37:33 -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
Quincey Koziol
7bf3a426e8 [svn-r26837] Description:
Separate allocating chunk on disk from inserting the chunk record into the
index.  This allows a "SWMR-safe" insert/update of chunks (the chunk is always
allocated -> written -> inserted/updated in the index).

Tested on:
    Mac OSX/64 10.10.2 (amazon) w/parallel & serial
    Linux/32 2.6.18 (jam) w/serial & parallel
2015-04-17 15:49:27 -05:00
Quincey Koziol
3bdb116942 [svn-r25092] Description:
More migration to using H5F_io_info_t pointers and away from using
property list IDs internally.  Also, clean up some compiler warnings in the
cache code.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & parallel
    (h5committest forthcoming)
2014-04-24 11:30:24 -05:00
Quincey Koziol
cd973218bf [svn-r25088] Description:
Introduce "file I/O info" struct, to hold file & dxpl pointers, and start
propagating up through library.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & parallel
    (h5committest coming)
2014-04-23 14:10:11 -05:00
Quincey Koziol
0a506a625b [svn-r24476] Description:
Remove duplicate "intent" flags from top & shared file structures, leaving
    them only in the shared file structure.

Tested on:
    Mac OSX/64 10.9.0 (amazon) w/gcc 4.8, both parallel & serial
    (too minor to require h5committest)
2013-11-30 00:51:42 -05:00
Quincey Koziol
9c9ee2008c [svn-r21919] Description:
Refactor function name macros and simplify the FUNC_ENTER macros, to clear
away the cruft and prepare for further cleanups.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
2012-02-08 22:13:27 -05:00
Mike McGreevy
39e3974628 [svn-r19798] Purpose:
Add additional error checking to catch erroneous user input.

Description:

    Attempting to retrieve a links's name by index in the case
    where the link is external and the file that the object is
    located in doesn't exist was causing a segmentation fault
    (in production) and an assertion failure (in debug).

    The segfault wasn't occuring until the metadata accumulator
    attempted a write, so I've added error checking higher in
    the pipeline in H5O_protect (where there was previously just
    an assert) to catch this. I've also added additional asserts
    in the H5F layer where there were none.

    Additionally, I added another case to the links.c test to
    test that this fails gracefully instead of segfaulting or 
    asserting out.

Tested:

    h5committest and gandalf (mac os x)
2010-11-17 10:08:33 -05:00
Mike McGreevy
c002883bcc [svn-r19617] Purpose:
Merge accum_tests branch back to the trunk.
Description:
    Changes consist of addition of tests for H5Faccum.c source code,
    as well as some fixes that address some discovered bugs in the
    metadata accumulator on several corner cases.
Tested:
    h5committested
2010-10-15 14:16:41 -05:00
Quincey Koziol
4fa1b3c1aa [svn-r17017] Description:
Rework the "proxy address" code to be more general and implement a better
"temporary address" feature, that will allow for metadata allocations to be
deferred to when the metadata is actually flushed to the file.

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/C++ & FORTRAN, w/threadsafe,
        in debug mode
    Linux/64-amd64 2.6 (smirom) 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-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.5.7 (amazon) in debug mode
    Mac OS X/32 10.5.7 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-06-08 18:16:19 -05:00
Quincey Koziol
9f60f016ab [svn-r15800] Description:
Bring file free space branch changes through r15795 into trunk, which
includes a fair bit of code cleanup & rearrangement along with a couple of
bug fixes also.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) 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-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2008-10-06 23:17:35 -05:00