Commit Graph

124 Commits

Author SHA1 Message Date
Vailin Choi
980d5b4266 Fix for HDFFV-7853 H5Ocopy doesn't work with open identifiers
Changes made so that raw data for dataset objects are copied from cached info when possible instead of flushing objects to file and read them back in again.
2017-06-10 19:40:19 -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
5df52404bc Misc. small cleanups to sync against incoming page buffering changes. 2017-03-02 06:24:46 -08:00
Frank Willmore
b2948d9f97 Merge pull request #100 in HDFFV/hdf5 from ~FRANK.WILLMORE/hdf5:HDFFV-8882-replace-numeric-exit-code-with to develop
* commit '526bcc242d03a6fc4fd28d3a0f68cc31f4f2a850':
  Changes to be committed: 	modified:   bittests.c 	modified:   cmpd_dset.c 	modified:   dsets.c 	modified:   dt_arith.c 	modified:   dtypes.c 	modified:   extend.c 	modified:   fillval.c 	modified:   filter_fail.c 	modified:   flush1.c 	modified:   gen_cross.c 	modified:   hyperslab.c 	modified:   istore.c 	modified:   links.c 	modified:   links_env.c 	modified:   objcopy.c 	modified:   plugin.c 	modified:   tcheck_version.c 	modified:   unlink.c 	modified:   unregister.c
2016-11-03 16:28:29 -05:00
Quincey Koziol
84787e3085 Uncomment line in test/objcopy.c, clean up whitespace and POSIX call wrapping
in tools code.
2016-11-03 08:46:53 -07:00
Frank.Willmore
526bcc242d Changes to be committed:
modified:   bittests.c
	modified:   cmpd_dset.c
	modified:   dsets.c
	modified:   dt_arith.c
	modified:   dtypes.c
	modified:   extend.c
	modified:   fillval.c
	modified:   filter_fail.c
	modified:   flush1.c
	modified:   gen_cross.c
	modified:   hyperslab.c
	modified:   istore.c
	modified:   links.c
	modified:   links_env.c
	modified:   objcopy.c
	modified:   plugin.c
	modified:   tcheck_version.c
	modified:   unlink.c
	modified:   unregister.c

Minor fixes to replace numeric exit codes with MACRO declarations. Not all codes found were boolean, and those cases were not changed.
2016-10-25 09:53:44 -05:00
Vailin Choi
c8af99f530 [svn-r30308] Fix for HDFFV-7991--error when copying dataset with attribute which is a compound datatype consisting of
a variable length string.
Tested on mayll, platypus, osx1010test, emu, kituo, kite, quail, moohan, ostrich.
2016-08-19 15:58:16 -05:00
Allen Byrne
bac4cf8e92 [svn-r30238] Follow-on to HDFFV-9928: remove unconditional call of time.h type headers. Also remove duplicated includes when h5private.h is used. 2016-08-01 12:38:34 -05:00
Quincey Koziol
b2d6d68d5d [svn-r29770] Description:
Bring 'none' chunk index from revise_chunks branch to trunk.

Tested on:
    MacOSX/64 10.11.4 (amazon) w/serial, parallel & production (w/check-vfd)
    (h5committest forthcoming)
2016-04-23 00:03:00 -05:00
Quincey Koziol
f7aff7d5cf [svn-r29738] Description:
Bring "single" chunk index from revise_chunks branch to trunk.

Tested on:
    MacOSX/64 10.11.4 (amazon) w/serial, parallel & production (w/check-vfd)
    (h5committest forthcoming)
2016-04-18 23:21:12 -05:00
Quincey Koziol
ce8905cc90 [svn-r29718] Description:
Bring changes from revise_chunks branch to trunk

Tested on:
    MacOSX/64 10.11.4 (amazon) w/serial, parallel, and production
    (h5committest forthcoming)
2016-04-16 03:50:45 -05:00
Quincey Koziol
3cd705e56e [svn-r29612] Description:
Bring updated layout and EFL property comparisons and new "latest format"
flags from revise_chunks branch.

Tested on:
    MacOSX/64 10.11.4 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-04-03 03:48:50 -05:00
Quincey Koziol
9d2178ab88 [svn-r29607] Description:
Bring "don't filter partial edge chunks" capability from revise_chunks
to trunk.

Tested on:
    MacOSX/64 10.11.4 (amazon) w/debug, production & parallel
    (h5committest forthcoming)
2016-04-02 04:39:32 -05:00
Dana Robinson
8bbdc947c4 [svn-r28972] Removed option to clear file buffers from autotools, CMake, and library.
Buffers that will be written to disk will now always be cleared since
not doing this has huge security implications.

Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0, x86_64) gcc 5.2.1
           serial autotools
           parallel autotools (MPICH 3.1.4)
           serial CMake
2016-01-26 16:26:12 -05:00
Quincey Koziol
f60170dac7 [svn-r28761] Description:
Clean up many mismatches between malloc/free and H5MM_malloc/H5MM_xfree
in the library and tests (and use of H5free_memory and H5Dvlen_reclaim).  Also
make H5Ocopy use a private version of H5Lexists, which doesn't internally
throw (and suppress) errors when an object (or the path to it) isn't found in
the destination.

Tested on:
    MacOSX/64 10.11.2 (amazon) w/serial & parallel
    (h5committest forthcoming)
2016-01-01 01:28:04 -05:00
Dana Robinson
0a00732c4d [svn-r28696] Minor normalization with revise_chunks.
Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1
           serial only
2015-12-17 01:31:27 -05:00
Jerome Soumagne
2094d86461 [svn-r28138] Add first support for _Bool and make hbool_t a "real" _Bool if available
Fix tests accordingly and fix misuse of hbool_t in various places

Fix initialization of H5Pgcpl/ocpl structs in property decoding routines

Tested on:
    Linux/32 (jam)
    Linux/64 (platypus)
    Linux/PPC64 (ostrich)
    MacOSX/64 10.11
2015-10-20 01:28:17 -05:00
Quincey Koziol
ee7612be44 [svn-r27811] Description:
Refactor property list code to "deep copy" properties in the correct way,
retraining the rest of the library to copy & release things correctly.  This
cleans up another batch of memory leaks, etc. within the library.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/32 2.6.x (jam) w/serial & parallel
    (h5committest forthcoming)
2015-09-16 17:27:49 -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
Dana Robinson
2e6100fb23 [svn-r27572] Removed VMS-specific code from the library.
The only remaining code consists of a few floating-point tests
that rely on pre-generated and checked-in VMS files. These have
been left alone, even though they will not be possible to
recreate, since testing VMS float behavior is still important.

Tested on: h5committest
2015-08-24 15:19:39 -05:00
Jerome Soumagne
ab7d724ffd [svn-r27548] Revert r27545 2015-08-21 17:44:22 -05:00
Jerome Soumagne
7ce2d52cf6 [svn-r27545] Add first support for _Bool and make hbool_t a "real" _Bool if available
Fix tests accordingly
2015-08-21 13:52:30 -05:00
Mohamad Chaarawi
fc45d5fcb0 [svn-r27133] - Add a new attribute function characterstic for format:
* H5_ATTR_FORMAT(X,Y,Z)  __attribute__((format(X, Y, Z)))
- Rename UNUSED attribute characterstic to H5_ATTR_UNUSED.
- Rename NORETURN attribute characterstic to H5_ATTR_NORETURN

tested with h5committest.
2015-06-01 14:38:09 -05:00
Dana Robinson
d8e3d8e908 [svn-r26333] Eliminates gcc warnings due to -Wunsuffixed-float-constants.
- Adds 'F' suffixes for most float constants.

- A few constants MUST be of type double. These now receive the long
  double L suffix and are then cast to double. I do this via a new
  H5_DOUBLE() macro which was added to H5private.h.

Fixes: HDFFV-9148

Tested on: h5committest
2015-03-01 13:48:54 -05:00
Quincey Koziol
33ea1ada24 [svn-r25496] Description:
Merge 64-bit ID changes from branch to trunk.  (Plus a few minor cleanups
that aren't on the branch)

Tested on:
    Mac OSX/64 10.9.4 (amazon) w/C++ & FORTRAN
    (h5committested on branch already for a week)
2014-07-30 15:55:14 -05:00
Quincey Koziol
308c378ccd [svn-r24020] Description:
Clean up compiler warnings

Tested on:
    Mac OSX/64 10.8.4 (amazon) w/C++ & FORTRAN
    (too minor to require h5committest)
2013-08-17 15:05:27 -05:00
Quincey Koziol
88a94bbe7f [svn-r22646] Description:
Changes resulting from Klocwork static analysis tool, from Mark Miller
@ LLNL (miller86@llnl.gov).

Tested on:
    Mac OS X/64 10.7.4 (amazon) w/debug, C++ & FORTRAN, using gcc 4.7.x
    (too minor to require h5committest)
2012-08-08 18:01:20 -05:00
Neil Fortner
c04144fb39 [svn-r22601] Purpose: Fix HDFFV-5853
Description:
When jumping out from between H5_BEGIN_TAG and H5_END_TAG macros using
HGOTO_ERROR or HGOTO_DONE, the previous metadata tag is not reset on the dxpl.
This could cause problems when, for example, calling H5Ocopy within an
H5Literate callback.

Added new HGOTO_ERROR_TAG and HGOTO_DONE_TAG macros which must be used in place
of the above between H5_BEGIN_TAG and H5_END_TAG.

Tested:
jam, koala, ostrich (h5committest), durandal
2012-07-25 16:50:22 -05:00
Neil Fortner
8448745891 [svn-r22173] Purpose: Fix HDFFV-7762
Description:
When copying an object with attribute creation order tracked, the attribute
creation order was not copied correctly to the destination file, causing an
error if the creation order was also indexed (due to attempting to insert
duplicate keys) or incorrect creation orders otherwise.  Fixed to copy the
creation order correctly.

Also fixed the attribute character set not being copied, and fixed an issue
where an attribute opened with H5Aopen (or similar, but not by_idx), from an
object using the latest format but without creation order being tracked, would
always report the creation order as 0 (and marked as valid).

Tested: jam, koala, ostrich (h5committest), durandal
2012-03-28 16:02:30 -05:00
Quincey Koziol
35a0e27e88 [svn-r22171] Description:
Bring "merge committed datatypes during H5Ocopy" feature from branch to
trunk.  (Also has some minor bugfixes with it)

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug
    (h5committest coming up)
2012-03-28 14:45:49 -05:00
Vailin Choi
b643da672a [svn-r22164] Fixed a bug in H5Ocopy(): When copying an opened object, call the object's
flush class action to ensure that cached data is flushed so that H5Ocopy will get
the correct data.  (HDFFV-7853)
2012-03-28 01:21:14 -05:00
Dana Robinson
ada561507a [svn-r22111] Removed incorrect 'executable' svn properties. 2012-03-21 15:01:10 -05:00
Quincey Koziol
0381963da6 [svn-r21675] Description:
Don't check dataset storage size for compressed datasets with region
reference datatypes.  (The address of the region reference type in the file
varies and affects the compressed size)

Tested on:
    Mac OS X/32 10.7.2 (amazon) w/debug & production + check-vfd
2011-10-26 09:55:23 -05:00
Neil Fortner
72702153d2 [svn-r21629] Purpose: Update fix committed in r21556
Description:
An old patch was mistakenly committed in r21556.  Replaced this fix with the
latest.

Tested: jam, koala, heiwa (h5committest)
2011-10-20 17:01:21 -05:00
Quincey Koziol
1c320f0025 [svn-r21617] Description:
Recalculate the size of destination attribute message when the source and
destination versions are different during an object copy operation. 
(Jira: HDFF-7718)

Tested on:
    Mac OS X/32 10.7.2 (amazon) w/debug
    (h5committest upcoming)
2011-10-20 12:05:23 -05:00
Neil Fortner
56960ac85c [svn-r21556] Purpose: Fix bug in H5Ocopy
Description:
H5Ocopy could get confused when copying a named datatype containing an
attribute which used that named datatype as its datatype.  This happened
because H5Ocopy would recurse into the attribute's datatype before the object
the attribute was in was fully copied (i.e. before the "post-copy" pass).
Modified H5Ocopy to avoid recursing before the post-copy step in this case.
Required many changes, including to how non-committed shared messages are
copied.

Tested: jam, koala, heiwa (h5committest); durandal
2011-10-13 18:10:50 -05:00
Quincey Koziol
a777619a6b [svn-r21121] Description:
Switch from H5P_DATASET_ACCESS_DEFAULT to H5P_DEFAULT for calls to
H5Rdereference2().

Tested on:
    Mac OS X/32 10.6.8 (amazon) w/debug
    (too minor to require h5committest)
2011-07-18 18:12:28 -05:00
Raymond Lu
304f19d730 [svn-r21117] Issue 2763 - I added a new parameter of object access property list to the function H5Rdereference. It's called H5Rdereference2 now. H5Rdereference function has been deprecated to H5Rdereference1. I also added some test cases in trefer.c.
Tested on jam, heiwa, and koala.
2011-07-18 16:23:02 -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
Quincey Koziol
47c3bc7540 [svn-r19272] Description:
Close out various resource leaks and usages of uninitialized memory that
were flagged by valgrind.  [There's still some more valgrind warnings, but
it's better now... :-/ ]

    Also clean up warnings and code formatting.

Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug & valgrind
    (h5committest forthcoming)
2010-08-20 16:37:12 -05:00
Neil Fortner
7270b677a5 [svn-r18535] Purpose: Fix bug 1815
Description:
Attempting to copy an object with NULL references (all bytes zero) with the
H5O_COPY_EXPAND_REFERENCE_FLAG flag set would cause a failure or an assertion
(depending on whether it was in debug mode).  Changed copy routine to detect
NULL references (object and region) and avoid attempting to expand the reference
in this case.

Tested: jam, linew, amani (h5committest)
2010-04-08 13:29:59 -05:00
Quincey Koziol
1809f040c9 [svn-r18419] Description:
Clean up srcdir querying code more, extracting it into single header file,
to avoid compiler warnings.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug & prod
    Linux/32 2.6 (jam)
2010-03-18 07:23:04 -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
Neil Fortner
1872925320 [svn-r18376] Purpose: Fix bug 1733
Description:
Support for expanding external links was not implemented in H5Ocopy, even though
a flag existed for H5Pset_copy_object to enable this.  This patch implements
this feature.

Tested: jam, amani, linew (h5committest); Fedora
2010-03-05 12:51:45 -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
Quincey Koziol
fb1059e507 [svn-r17953] Description:
Bring Coverity changes into the trunk:

r17877:
Error 266: Uninitialized memspace set to -1. Changed malloc and free to HDmalloc and HDfree. Removed unused dtype var.

r17878:
Error 265: Uninitialized mem_space set to -1. Changed malloc and free to HDmalloc and HDfree. 
Error 267: Uninitialized smspace set to -1. Changed malloc and free to HDmalloc and HDfree.

r17879:
Error 242: Uninitialized aid set to -1. 
Error 243: Uninitialized sid set to -1. 
Uninitialized tid set to -1 for consistency

r17880:
Error 242: reinitialized aid to -1 after close to be ready for reuse. 
Error 243: reinitialized sid to -1 after close to be ready for reuse. 
reinitialized tid to -1 for consistency after close to be ready for reuse.

r17881:
use valgrind to check there is a memory leak. The fix is to free ptrstr in line 5838 at xml_dump_group() of h5dump.c after it is used. run the valgrind after the fix, no memory leak for that part of the code.

r17882:
Fix Coverity items 256 and 269.

r17883:
Error 222-230: initialized hid_t vars to -1 after close to be ready for reuse. 
Also added H5Tclose for tid in gent_bigdims

r17884:
Bug fix (Coverity run2, view 23, dead code)
(this is pair-program done by Albert, Elena and Larry).

Confirmed and fixed the deadcode in hyperslab read branch of function
diff_datasetid.
(Discovered other bad code that diff_datasetid() should be recoded.  
Bug 1693 is entered for this.)

r17906:
Fix Coverity item 260.

r17907:
262: Initialized hid_t's dtype, dtype_tmp and file to -1. Initialized H5T_t * dt to NULL.

r17908:
Fix Coverity item 261.

r17909:
Fix Coverity item 248.

r17910:
Revise fix for Coverity item 248.

r17911:
Resolved coverity issues #s 263, 162, 163, 164. All issues in dsets.c. Initialized fid and did hid_t's. filter_corrupt function was returning in the middle of an if statement, bypassing free calls. Updated error handling to free buffers and hid_t's appropriately.

r17912:
(done by Larry and Albert)
Cleanup Coverity view warnings (#231-241) about
using uninitialized variables.  Initialized all
of them.

r17913:
Resolved issue 251 and 264. Initialized tid2 to -1 and initialized buffers that were freed in case of an error.

r17914:
Resolved coverity issues 66, 220, and 221: 

66: Negative Return assignment ignored

220,221: Initialized hid_t's.

r17915:
Fix Coverity item 247.

r17916:
Fix Coverity item 246.

r17917:
Fix Coverity item 245.

r17918:
Fix Coverity item 244.

r17919:
Coverity Issue #84: Moved asserts in H5T_cmp to the top of the function, and converted them to HDassert. Coverity complaining about using potentially NULL pointer without checking it. Want to see if Coverity will accept Assertions as acceptable checking before using the value. 

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 (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.6.2 (amazon) in debug mode
    Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-12-03 14:11:29 -05:00
Neil Fortner
eed2ea424b [svn-r17585] Purpose: Fix bug 1597
Description:
When copying a dataset  using a vlen inside a compound, the various dataset
copying callbacks would allocate a background buffer but would not use it when
converting from disk to memory, only memory to disk.  This caused an assertion
failure as compounds always need a background buffer.  These callbacks have
been modified to use the background buffer for both conversions.

Tested: jam, linew, smirom (h5committest)
2009-10-02 15:40:01 -05:00
Neil Fortner
c1c58f79a8 [svn-r16710] Purpose: Fix bug 1423
Description:
Versions of the library between 1.3.0 and 1.6.3 have a bug which prevents them
from opening any file that does not have the root group's symbol table
information cached in the root group's entry in the superblock.  Prior to 1.8
this was not an issue as this information was always cached.  However, 1.8.0
stopped writing this information (which is not required by the file format
specification), and these older versions can therefore not read files created or
last written by versions 1.8.0 to 1.8.2.  This fix modifies the library to once
again add this information to the superblock (when using the old file format).

Tested: jam, linew, smirom (h5committest)
2009-04-08 16:53:31 -05:00
Quincey Koziol
7ba5922dca [svn-r16439] Description:
Bring r16435 from revise_chunks branch back to trunk:

        Expand object copy tests for chunked datasets to include 1-D datasets
with an unlimited dimension.  (Fix typo in comment for test/links.c)

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
	(more thoroughly tested already on revise_chunks branch)
2009-02-05 10:50:25 -05:00
Neil Fortner
af7ced00f6 [svn-r16380] Purpose: Enable copying of dense attributes
Description:
Attribute object copy routines have been moved from H5Oattr.c to H5Aint.c.
These routines are now shared between compact and densely stored attributes.
New routines written to support the copying of dense attributes.  This patch wasmostly written by Peter Cao.

Tested: jam, smirom (h5committest)
2009-01-29 16:02:07 -05:00