mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-27 02:10:55 +08:00
[svn-r23407] Purpose:
HDFFV-8214 - h5repack failed converting small chunked dataset (size < 1K) to contiguous layout. Description: h5repack failed converting small chunked dataset (size < 1K) to contiguous layout. The first case was when chunk dim is bigger than the dataset dim (at leat one), h5repack failed with displaying error stacks. The other case is when chunk dim is smaller than the dataset dim, h5repack failed to change layout. Tested: jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), emu (solaris-BE),fred (mac64-LE), Windows (32-LE cmake), cmake (jam)
This commit is contained in:
parent
59dd5665a5
commit
e8955b876c
@ -751,6 +751,8 @@ Bug Fixes since HDF5-1.8.0 release
|
||||
|
||||
Tools
|
||||
-----
|
||||
- h5repack: Fixed failure for converting a layout of small chunked dataset
|
||||
(size < 1K) to contiguous layout. HDFFV-8214 (JKM 2013/03/18)
|
||||
- h5diff: Fixed to return correct exit code 1 when detect unique extra
|
||||
attribute. Prior to this fix, h5diff returned exit code 0 indicating
|
||||
two files are identical. HDFFV-7643 (JKM 2013/02/15)
|
||||
|
@ -881,6 +881,18 @@ ADD_H5_VERIFY_TEST (error3 "TEST" 0 h5repack_layout3.h5 chunk_unlimit3 H5S_UNLIM
|
||||
# file input - should not fail
|
||||
ADD_H5_TEST (error4 "TEST" h5repack_layout3.h5 -f NONE)
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Test base: Convert CHUNK to CONTI for a chunked dataset with small dataset
|
||||
# (dset size < 64K) and with unlimited max dims on a condition as follow.
|
||||
# (HDFFV-8214)
|
||||
#--------------------------------------------------------------------------
|
||||
# chunk dim is bigger than dataset dim. should succeed.
|
||||
ADD_H5_VERIFY_TEST (ckdim_biger "TEST" 0 h5repack_layout3.h5 chunk_unlimit2 CONTI -l chunk_unlimit2:CONTI)
|
||||
# chunk dim is smaller than dataset dim. should succeed.
|
||||
ADD_H5_VERIFY_TEST (ckdim_smaller "TEST" 0 h5repack_layout3.h5 chunk_unlimit3 CONTI -l chunk_unlimit3:CONTI)
|
||||
|
||||
|
||||
|
||||
# Native option
|
||||
# Do not use FILE1, as the named dtype will be converted to native, and h5diff will
|
||||
# report a difference.
|
||||
|
@ -891,6 +891,18 @@ VERIFY_LAYOUT_DSET error3 h5repack_layout3.h5 chunk_unlimit3 H5S_UNLIMITED -f ch
|
||||
# file input - should not fail
|
||||
TOOLTEST error4 h5repack_layout3.h5 -f NONE
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Test base: Convert CHUNK to CONTI for a chunked dataset with small dataset
|
||||
# (dset size < 64K) and with unlimited max dims on a condition as follow.
|
||||
# (HDFFV-8214)
|
||||
#--------------------------------------------------------------------------
|
||||
|
||||
# chunk dim is bigger than dataset dim. should succeed.
|
||||
VERIFY_LAYOUT_DSET ckdim_biger h5repack_layout3.h5 chunk_unlimit2 CONTI -l chunk_unlimit2:CONTI
|
||||
# chunk dim is smaller than dataset dim. should succeed.
|
||||
VERIFY_LAYOUT_DSET ckdim_smaller h5repack_layout3.h5 chunk_unlimit3 CONTI -l chunk_unlimit3:CONTI
|
||||
|
||||
|
||||
# Native option
|
||||
# Do not use FILE1, as the named dtype will be converted to native, and h5diff will
|
||||
# report a difference.
|
||||
|
@ -1017,16 +1017,6 @@ int do_copy_objects(hid_t fidin,
|
||||
/* get the storage size of the input dataset */
|
||||
dsize_in=H5Dget_storage_size(dset_in);
|
||||
|
||||
/* check for small size datasets (less than 1k) except
|
||||
* changing to COMPACT. For the reference, COMPACT is limited
|
||||
* by size 64K by library.
|
||||
*/
|
||||
if (options->layout_g != H5D_COMPACT)
|
||||
{
|
||||
if ( size_dset < options->min_comp )
|
||||
apply_s=0;
|
||||
}
|
||||
|
||||
/* apply the filter */
|
||||
if (apply_s)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user