Commit Graph
100 Commits
Author SHA1 Message Date
Neil Fortner 1d946c7028 Implement internally concurrent multithreading for chunk dataset I/O reads (#6645)
Added 3 new functions to support this: H5TSset_internal_threads(), H5Pset_io_threads(), and H5Pget_io_threads().

This feature internally parallelizes read operations on chunked datasets. H5TSset_internal_threads() is used to enable the feature globally, while H5Pset_io_threads() can be used to disable the feature on a per-operation basis. These functions are only available when the library is configured with HDF5_ENABLE_CONCURRENCY=ON. When performing an internally threaded read, the library will concurrently read from disk, unfilter, and scatter to memory all chunks in a read operation on a chunked dataset. Currently each of these sub-operations is serialized (protected by a mutex), so there is not yet likely to be any performance improvement.
2026-09-15 10:51:57 -05:00
Neil Fortner b6a9b4820e Add documentation for H5S_BLOCK to RM entries for H5Dread and H5Dwrite (#6587) 2026-08-04 16:28:15 -05:00
Neil Fortner bafc55cfb0 Enable error printing for internal data filters (#6539) 2026-07-21 09:21:12 -05:00
Neil Fortnerandgithub-actions 01b7084924 Avoid converting fill value from memory to file type when reading vlen data from a nonexistent chunk (#6529)
* Avoid converting fill value from memory to file type when reading vlen
data from a nonexistent chunk.

* Committing clang-format changes

* Add Changelog note

* Spelling

* Update changelog note

* Improve test description

* Hopefully make formatter happy

* Hyphenate read-only

---------

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-17 10:30:45 -05:00
Neil Fortner b1227f798e Add function description for H5F_shared_vector_read (#6481) 2026-06-23 15:06:52 -05:00
Neil Fortner e124c36c55 Allow reading of files with chunk dimensions encoded using more bytes than necessary 2026-06-05 11:27:45 -05:00
Neil Fortner d926e3cbd0 Various fixes to handling of chunk buffers (#6184)
Verify uncompressed chunks are the right size after being uncompressed (reverse filtered)
Verify that the buffer returned from the filter callback is large enough to hold the returned data size
Fix bug in deflate filter that caused it to report the wrong buffer size
Fix bug in chunk copy code that could cause a background buffer overflow
Fix bug in chunk copy code that could cause a double free if the filter realloced the data buffer
Other general cleanup
2026-04-29 10:40:17 -05:00
Neil Fortnerandgithub-actions 42c419e266 Fix issue with copying null new references (#1440)
* Fix issue with copying null new references. Fix assertion failure when
reference copying fails.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 09:28:21 -06:00
Neil Fortnerandgithub-actions feda52b084 Implement support for big I/O for independent reads (#1446)
* Implement big I/O support for independent reads. Add test for this.

* Committing clang-format changes

* Update big I/O code in H5FD__mpio_write() to match that in
H5FD__mpio_read().

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 09:27:05 -06:00
Neil Fortnerandgithub-actions 0f847f30bc Fix issue with H5_now_usec() with 32 bit systems (#1416)
* Implement H5ESget_requests() to retrieve request pointers and
corresponding connector IDs from an event set.  Add tests for this
function.

* Add "order" parameter to H5ESget_requests, to allow the user to specify
the order in which requests are returned.

* Fix bugs with H5ESinsert_request()

* Change H5ESget_requests() API to have separate input and output
parameters for the allocated array length(s) (in) and the number of events in
the event set (out).

* Fix issue with H5_now_usec() with 32 bit systems.  Also improve event
set test.

* Committing clang-format changes

* Add comments to H5_now_usec() explaining rationale for uint64_t casts.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-10 17:23:26 -06:00
Neil Fortnerandgithub-actions dd6ad33c75 Implement H5ESget requests function to retrieve requests from an event set (#1355)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-20 07:34:43 -06:00
Neil Fortner 22cdccb799 Fix bug with cross platform compatibility of references within vlens. (#1064)
No testing yet.
2021-10-01 14:28:50 -05:00
Neil Fortner ddd799282f Modify VDS code to always open source files with H5F_CLOSE_WEAK close (#291)
degree.  Add test cases to VDS test for this, and reduce the amount of
output from that test.
2021-01-30 16:47:23 -06:00
Neil Fortner a8ee85971b Fix problems with vlens and refs inside compound using H5VLget_file_type() (#274)
* Fixed problems with vlens and refs inside compound using H5VLget_file_type()

* Fix date in RELEASE.txt

* Add assertions

* Move some manipulation of H5VL_object_t struct fields into the H5VL
package.
2021-01-22 15:05:39 -06:00
Neil Fortner a5ffedb8c6 Improve performance of multiple calls to H5Sget_select_elem_pointlist (#270)
* Cache the pointer to the next point to process after the last call to
H5S__get_select_elem_pointlist.  This allows the normal process of
iterating over the points in batches to be much more efficient, as the
library does not need to traverse the entirety of the preceding points
every time the funciton is re-entered.

* Update RELEASE.txt for point selection iteration performance fix.
2021-01-19 18:42:14 -06:00
Neil Fortner 3ae45182b5 Fix error is H5Mclose_async. (#240) 2021-01-05 10:02:03 -06:00
Neil Fortner 7aedeedf67 Merge pull request #2139 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_init_fix to develop
* commit 'ce653ff82b7dd52b8e36a5eff7b1728c4b75d9f7':
  Modify H5VL initialization routines to initialize all VOL-managed object types.  Modify H5VLwrap_register() to reject non-VOL-managed object types.  Also fix overisights in h5trace.c from previous changes.
2019-12-12 15:52:59 -06:00
Neil Fortner ce653ff82b Modify H5VL initialization routines to initialize all VOL-managed object
types.  Modify H5VLwrap_register() to reject non-VOL-managed object
types.  Also fix overisights in h5trace.c from previous changes.
2019-12-12 15:52:21 -06:00
Neil Fortner 26b8bb8e6c Merge pull request #2098 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'f6961c82bf3e7b848b071a0299dcc3753361e35d':
  Add note to RELEASE.txt for H5Sselect_adjust.
2019-12-06 16:19:50 -06:00
Neil Fortner f6961c82bf Add note to RELEASE.txt for H5Sselect_adjust. 2019-12-06 16:18:33 -06:00
Neil Fortner ac14c63146 Merge pull request #2093 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '411241bea660411b99925edc8040139443fe8a74':
  Add RELEASE.txt note for H5Sselect_project_interesection
2019-12-06 14:36:11 -06:00
Neil Fortner 411241bea6 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-12-06 14:35:27 -06:00
Neil Fortner 848be85f00 Add RELEASE.txt note for H5Sselect_project_interesection 2019-12-06 14:34:56 -06:00
Neil Fortner fa31520e25 Merge pull request #2090 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'c7165f05444ce5ae6c5db50f2faf33023ba0eac0':
  Add RELEASE.txt note for HVLget_file_type()
2019-12-06 14:15:24 -06:00
Neil Fortner c7165f0544 Add RELEASE.txt note for HVLget_file_type() 2019-12-06 14:14:22 -06:00
Neil Fortner 5efd80f6ec Merge pull request #2073 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_vl_buf_size to develop
* commit '12ac0587e7b9b18a56907aa78f68c084dd5b51b4':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
2019-12-05 16:13:12 -06:00
Neil Fortner 12ac0587e7 Implement support for using H5Dvlen_get_buf_size with
non-native VOL connectors.
2019-12-05 16:11:30 -06:00
Neil Fortner bdbe010fd3 Merge pull request #2078 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '73709ef2fa2494e675566dd3310c6c8ebac01c18':
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
2019-12-05 16:03:16 -06:00
Neil Fortner 73709ef2fa Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-12-05 14:57:35 -06:00
Neil Fortner 9cb7729730 Add H5VL_MAP_OPTIONAL operation id (unused currently). 2019-12-05 14:56:57 -06:00
Neil Fortner aa0b54e27e Merge pull request #2064 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_fillval to develop
* commit '28294070597c8a04c10e55a843dfe6dbae6ef04c':
  Fix issues with using H5Pget_fill_value() with file datatypes retrieved from H5VLget_file_type().
2019-12-04 11:35:58 -06:00
Neil Fortner 62b5de82e2 Merge pull request #2065 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:scalar_spi2 to develop
* commit 'ac1a8ab5fe7c58533e005fef94d3acb2d46f4b31':
  Add support for scalar dataspaces to H5Sproject_intersection.  Add checking for ank validity.
2019-12-04 11:33:43 -06:00
Neil Fortner ac1a8ab5fe Add support for scalar dataspaces to H5Sproject_intersection. Add
checking for ank validity.
2019-12-02 10:32:03 -06:00
Neil Fortner 0772b975d1 Merge pull request #2063 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_file_cmp to develop
* commit '40b2658b4b266b4dc65ec3db2897e0aaf54f8e42':
  Fix missing free in H5T__ref_mem_read()
  Fix bugs in H5VL file comparison code.  Add short circuit success to H5VL_cmp_connector_cls().
  Implement file comparison VOL callback.  Other changes to allow references to work with non-native connectors.  There is a bug somewhere.
2019-11-30 18:44:02 -06:00
Neil Fortner 40b2658b4b Fix missing free in H5T__ref_mem_read() 2019-11-28 23:07:33 -06:00
Neil Fortner ece625e3b6 Fix bugs in H5VL file comparison code. Add short circuit success to
H5VL_cmp_connector_cls().
2019-11-27 22:48:01 -06:00
Neil Fortner e23e67798a Implement file comparison VOL callback. Other changes to allow
references to work with non-native connectors.  There is a bug
somewhere.
2019-11-27 16:50:01 -06:00
Neil Fortner 2829407059 Fix issues with using H5Pget_fill_value() with file datatypes retrieved
from H5VLget_file_type().
2019-11-27 14:52:30 -06:00
Neil Fortner 33a5acf8a5 Merge pull request #2050 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:point_spi to develop
* commit 'ad2fbb022e096233444489e69b93343a4b7e9631':
  Add support for point selections to H5S_select_project_intersection.
2019-11-27 14:47:23 -06:00
Neil Fortner ad2fbb022e Add support for point selections to H5S_select_project_intersection. 2019-11-27 14:45:53 -06:00
Neil Fortner 9f61c26927 Merge pull request #2045 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:select_adjust to develop
* commit '4e12984b77cdd7615843d94f8de8d54db27476ac':
  Move checking for zero offset in selection adjust calls to the selection callbacks.  This makes the procedure for checking it consistent across selection types and between _s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
  Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with H5Sselect_adjust.  Implement "adjust_s" callback for all selection types.  Add range checking to H5Sselect_adjust().
2019-11-26 11:38:25 -06:00
Neil Fortner 33d173d672 Merge pull request #2043 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:seq_list_fix to develop
* commit 'c104f4cb87a1558ab6a772967887738dc9800f0d':
  Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached the end of iteration (returning zero sequences).  Previously it could cause an assertion failure.
2019-11-20 12:02:46 -06:00
Neil Fortner 4e12984b77 Move checking for zero offset in selection adjust calls to the selection callbacks. This makes the
procedure for checking it consistent across selection types and between
_s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
2019-11-18 13:33:36 -06:00
Neil Fortner 4064332a2d Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with
H5Sselect_adjust.  Implement "adjust_s" callback for all selection
types.  Add range checking to H5Sselect_adjust().
2019-11-18 11:53:50 -06:00
Neil Fortner c104f4cb87 Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached
the end of iteration (returning zero sequences).  Previously it could
cause an assertion failure.
2019-11-15 16:47:30 -06:00
Neil Fortner 07b59c0b63 Merge pull request #2033 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:public_spi to develop
* commit 'db6eab893e5f027f0b535316e0e7a9abe9ff8619':
  Implement public H5Sselect_project_intersection().  Updated internal algorithm to (optionally) avoid sharing selection data structures. Tested internal code (including with valgrind) by setting VDS code to avoid sharing selection, has since been changed to share selection for performance, so this code is not yet tested in regression tests.  API has not been tested.
2019-11-13 12:57:31 -06:00
Neil Fortner db6eab893e Implement public H5Sselect_project_intersection(). Updated internal
algorithm to (optionally) avoid sharing selection data structures.
Tested internal code (including with valgrind) by setting VDS code to
avoid sharing selection, has since been changed to share selection for
performance, so this code is not yet tested in regression tests.  API
has not been tested.
2019-11-13 12:54:13 -06:00
Neil Fortner f1b3df09ef Merge pull request #2037 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'e5fc4889fa4f412056a4672435c96c17a6d1a936':
  Fix issue where H5R__reopen_file did not make the file "post open" callback.
2019-11-12 13:01:40 -06:00
Neil Fortner e5fc4889fa Fix issue where H5R__reopen_file did not make the file "post open"
callback.
2019-11-12 12:09:43 -06:00
Neil Fortner 9fd1143ffd Merge pull request #2032 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vlget_file_type to develop
* commit '1dbec40d465072540f8507c524ae7b909a6b1cf0':
  Implement H5VLget_file_type() to return a copy of a datatype with the location set to be in a file.  Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs.  Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application).  Modify vlen and reference interfaces to work with arbitrary VOL connectors.  Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
2019-11-08 15:21:21 -06:00
Neil Fortner 1dbec40d46 Implement H5VLget_file_type() to return a copy of a datatype with the
location set to be in a file.  Only meant to be used by VOL connectors.
Implement H5VLpeek_connector_id() to support connectors querying their
own IDs.  Fix app_ref with connector IDs in a couple places (external
VOLs registered as default through ENV should be visible to the
application).  Modify vlen and reference interfaces to work with
arbitrary VOL connectors.  Implement file "post open" specific
callback, to enable connectors to update their file structs after a
wrap context has been set.
2019-11-08 15:14:33 -06:00
Neil Fortner 66699f2c7d Merge pull request #1717 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Complete rework of H5S__hyper_project_intersection. Addresses VDS performance issues raised in HDFFV-10693.

* commit 'd3e242eba1ba98726ed64b14e75f6adee724bea7':
  Minor fixes/improvements for VDS performance improvement (HDFFV-10693).
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
2019-06-04 11:06:23 -05:00
Neil Fortner d3e242eba1 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-06-03 12:48:02 -05:00
Neil Fortner 45daa3d168 Minor fixes/improvements for VDS performance improvement (HDFFV-10693). 2019-06-03 12:42:22 -05:00
Neil Fortner 988d6d0844 Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal. 2019-05-31 19:32:35 -05:00
Neil Fortner 35a8a549f6 Refactor H5S__hyper_project_intersection to operate directly on span
trees, improving performance and removing the conditionn that the
extents be equal.
2019-05-31 19:26:56 -05:00
Neil Fortner a0c5d9a1d3 Merge pull request #1594 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Fix issues with direct chunk operations and the single chunk index.

* commit 'c812a6c9ec5ff440dc405167c54b86fdb18dcfa4':
  Fix issue with direct chunk write not updating the "last chunk" index cache.  Fix issues involving datasets being "no allocated" when they contain cached raw data.
2019-03-15 10:22:12 -05:00
Neil Fortner c812a6c9ec Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-03-15 10:20:25 -05:00
Neil Fortner faec33960f Fix issue with direct chunk write not updating the "last chunk" index
cache.  Fix issues involving datasets being "no allocated" when they
contain cached raw data.
2019-03-06 16:57:42 -06:00
Neil Fortner b561c2fce8 Merge pull request #1513 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '261c22e0459f63fd81c8942992ffe3668969f0cd':
  Add RELEASE.txt note for unknown message fix (pull request 1448)
2019-01-30 16:49:34 -06:00
Neil Fortner 261c22e045 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-01-30 16:48:12 -06:00
Neil Fortner 773c35a664 Add RELEASE.txt note for unknown message fix (pull request 1448) 2019-01-30 16:47:47 -06:00
Neil Fortner 7e50055920 Merge pull request #1453 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '0dd2c29f284b1ec2a3c070d39805f657f44b216d':
  Remove H5O_BOGUS_INVALID_ID from H5O_msg_class_g initialization, since space for it was removed.
2019-01-08 10:45:46 -06:00
Neil Fortner 0dd2c29f28 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-01-08 10:37:28 -06:00
Neil Fortner 214abbfd59 Remove H5O_BOGUS_INVALID_ID from H5O_msg_class_g initialization, since
space for it was removed.
2019-01-08 10:36:34 -06:00
Neil Fortner 9c12b625fd Merge pull request #1448 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Avoid potential invalid read when decoding unknown object header message.

* commit '685288beabc4f4383d69ec07be05c067fab78544':
  Delay checking if decoded message's "shareable" flag is appropriate for the message type until we've verified we understand the message type. Reduce size of H5O_msg_class_g to *not* include space for H5O_BOGUS_INVALID.  Make bogus messages shareable.  Add new bogus message test with shareable messages to cover the formerly problematic code.  Re-run gen_bogus.c to add this test case and also to fix the bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a new message class being added in a previous commit.  Added comment to remind developers to run gen_bogus.c when adding a new message class.
2019-01-07 19:30:26 -06:00
Neil Fortner 685288beab Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5dfe00629588a54dbfb6f2d09dfbd88177e37cc2':
  HDFFV-10674 handle time as natural number
2019-01-07 15:54:02 -06:00
Neil Fortner b043126e5e Delay checking if decoded message's "shareable" flag is appropriate for
the message type until we've verified we understand the message type.
Reduce size of H5O_msg_class_g to *not* include space for
H5O_BOGUS_INVALID.  Make bogus messages shareable.  Add new bogus
message test with shareable messages to cover the formerly problematic
code.  Re-run gen_bogus.c to add this test case and also to fix the
bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a
new message class being added in a previous commit.  Added comment to
remind developers to run gen_bogus.c when adding a new message class.
2019-01-07 15:40:44 -06:00
Neil Fortner 2e05d65754 Merge pull request #781 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:hdf5_1_10 to hdf5_1_10
* commit '837dc4bb51e3d3e823235228a33f6ffeae166b52':
  Add RELEASE.txt note for HDFFV-10274. (cherry picked from commit f7a7d0a006)
  Initialize hid_t variables in test_Attr_bug9.
  Fix HDFFV-10274.  When deleting all (or almost all) of the messages in an object header chunk, where the total amount deleted was greater than 64K, an error would occur due to an off by one error in the code that handled that case.  Fixed this and added a test case.
2017-11-15 14:40:21 -06:00
Neil Fortner 837dc4bb51 Add RELEASE.txt note for HDFFV-10274.
(cherry picked from commit f7a7d0a006)
2017-11-15 11:06:29 -06:00
Neil Fortner e6224c7d8f Initialize hid_t variables in test_Attr_bug9. 2017-11-15 11:04:28 -06:00
Neil Fortner c03f326f31 Fix HDFFV-10274. When deleting all (or almost all) of the messages in
an object header chunk, where the total amount deleted was greater than
64K, an error would occur due to an off by one error in the code that
handled that case.  Fixed this and added a test case.
2017-11-15 11:04:28 -06:00
Neil Fortner df45abd0f6 Merge pull request #770 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'bca20b40b4966552a844051c3d912d6aec50592f':
  Initialize hid_t variables in test_Attr_bug9.
  Fix HDFFV-10274.  When deleting all (or almost all) of the messages in an object header chunk, where the total amount deleted was greater than 64K, an error would occur due to an off by one error in the code that handled that case.  Fixed this and added a test case.
2017-11-13 16:54:35 -06:00
Neil Fortner bca20b40b4 Initialize hid_t variables in test_Attr_bug9. 2017-11-13 13:43:32 -06:00
Neil Fortner 04bb800f7c Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2017-11-10 16:40:17 -06:00
Neil Fortner 576b9c5f5f Fix HDFFV-10274. When deleting all (or almost all) of the messages in
an object header chunk, where the total amount deleted was greater than
64K, an error would occur due to an off by one error in the code that
handled that case.  Fixed this and added a test case.
2017-11-10 16:37:40 -06:00
Neil Fortner a7fb4ede86 Merge pull request #42 in HDFFV/hdf5 from ~NFORTNE2/hdf5_nf:talos-0179 to develop
* commit '748d6f318c5ebe4fa7ee5d8e4ca2681d69792b70':
  Change check for number of dimensions for old-style arrays in datatype decoding routine from an assertion to an if/HGOTO_ERROR check, since it is inappropriate to assert the contents of a file will be what we expect.
2016-09-23 10:58:37 -05:00
Neil Fortner 51c6e5b595 Merge pull request #41 in HDFFV/hdf5 from ~NFORTNE2/hdf5_nf:talos-0177 to develop
* commit '866d17f57f47414b6e778d63fcdcc2a82b208683':
  Fix bug in "nooptype" decode in fix for TALOS-0177.
  Fix issues in H5Znbit.c where the decompression algorithm would not check the compressed data for validity, potentially causing a buffer overflow.
2016-09-23 10:58:22 -05:00
Neil Fortner afd8d14a1e Merge pull request #40 in HDFFV/hdf5 from ~NFORTNE2/hdf5_nf:talos-0176 to develop
* commit '62d7562fbd6c6f9f2892cc9a3894f5a68a2b6fdc':
  Replace assertion in H5O_dtype_decode_helper for number of array dimensions with a check and error. The assertion was inappropriate because it is operating on data read from the file, which the library does not always have direct control of.
2016-09-23 10:58:05 -05:00
Neil Fortner 748d6f318c Merge branch 'develop' into talos-0179 2016-09-23 09:51:59 -05:00
Neil Fortner 62d7562fbd Merge branch 'develop' into talos-0176 2016-09-23 09:51:16 -05:00
Neil Fortner 866d17f57f Merge branch 'develop' into talos-0177 2016-09-23 09:37:48 -05:00
Neil Fortner 391a231b76 Fix bug in "nooptype" decode in fix for TALOS-0177. 2016-09-09 12:08:30 -05:00
Neil Fortner bc10fd219e Change check for number of dimensions for old-style arrays in datatype decoding routine from an assertion to an if/HGOTO_ERROR check, since it is inappropriate to assert the contents of a file will be what we expect. 2016-09-08 13:47:22 -05:00
Neil Fortner 2409f99166 Fix issues in H5Znbit.c where the decompression algorithm would not check the compressed data for validity, potentially causing a buffer overflow. 2016-09-08 10:48:54 -05:00
Neil Fortner b1eb1b3ee8 Replace assertion in H5O_dtype_decode_helper for number of array dimensions with a check and error. The assertion was inappropriate because it is operating on data read from the file, which the library does not always have direct control of. 2016-09-01 17:24:24 -05:00
Neil Fortner 7ee176d29b [svn-r30275] Rework test_mf_bug1 to work with multi and split drivers.
Tested: ummon
2016-08-09 16:36:01 -05: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
Neil Fortner 36c595e5ea [svn-r30268] Remove failure causing code in test/mf.c unintentionally added in r30264. 2016-08-08 15:37:56 -05:00
Neil Fortner 297268f238 [svn-r30264] Fixed an issue that could occur when using H5Pset_alignment where a block could
be unaligned, causing an assertion failure.

Tested: koala, ostrich, jelly (h5committest), ummon
2016-08-08 13:46:21 -05:00
Neil Fortner bfae878d8f [svn-r30131] Fix bug reported by Cisco Talos TALOS-CAN-0178. Added check for a message that
should not be sharable being marked as sharable on disk, returns failure in
this case. Needs testing.

Tested: ummon
2016-07-01 10:31:44 -05:00
Neil Fortner 015d8047fb [svn-r28533] Fix loops in H5Dvirtual.c to only loop over used entries in VDS mapping list,
instead of all allocated entries.

Tested: ummon (too minor for full h5committest)
2015-12-07 14:31:47 -05:00
Neil Fortner 7ad885febc [svn-r28151] Fix memory leak in dtransform test (encountered when parsing an invalid
transform).

Tested: koala, ostrich (h5committest)
2015-10-20 17:05:28 -05:00
Neil Fortner dbdc9c1e2b [svn-r27879] Move property list shutdown earlier in H5_term_library, since with VDS layout it
needs to call into the H5D package.

Tested: ummon
2015-09-25 16:48:11 -05:00
Neil Fortner d23cc2da70 [svn-r27806] Fix property list serialization for values encoded by H5Pset_chunk_cache to be
compatible between 32 and 64 bit systems.
Expand cross platform property list encode/decode testing.
Fix warning in H5P__fill_value_enc.

Tested: jam, koala, ostrich (h5committest), ummon
2015-09-16 14:55:38 -05:00
Neil Fortner f3da956441 [svn-r27701] RM offset initialization that is no longer necessary with the recent fix to
H5Screate().

Tested: ummon
2015-09-08 15:41:38 -05:00
Neil Fortner dceb3f1818 [svn-r27673] rm unnecessary/unreachable code from H5S_get_select_hyper_nblocks
Tested: ummon
2015-09-03 16:27:58 -05:00
Neil Fortner c839ed3383 [svn-r27646] Add version number to VDS global heap object encoding.
Fix handling of layout version number.
Other minor fixes/cleanup.
NOTE: This commit changes the file format for VDS, all files must be
re-generated.

Tested: ummon
2015-09-01 08:03:33 -05:00
Neil Fortner 1d3a7ec651 [svn-r27606] Merge revisions 27593 through 27605 from trunk to vds branch.
Tested: ummon
2015-08-28 15:03:07 -05:00
Neil Fortner 1847391fc5 [svn-r27605] Fix potential memory error when using a dataspace that was created with
H5Screate and had its extent set by H5Sextent_copy.

Tested: jam, ostrich (h5committest)
2015-08-28 14:43:03 -05:00