summaryrefslogtreecommitdiffstats
path: root/src/H5Dlayout.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2016-04-23 05:03:00 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2016-04-23 05:03:00 (GMT)
commitb2d6d68d5dfe5c68cbeb45f30da89d44eaa58719 (patch)
treed6b6205b09360e90e76dffa73854bf288890280f /src/H5Dlayout.c
parent997392079b023bf366b62c17936d4ec305739be3 (diff)
downloadhdf5-b2d6d68d5dfe5c68cbeb45f30da89d44eaa58719.zip
hdf5-b2d6d68d5dfe5c68cbeb45f30da89d44eaa58719.tar.gz
hdf5-b2d6d68d5dfe5c68cbeb45f30da89d44eaa58719.tar.bz2
[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)
Diffstat (limited to 'src/H5Dlayout.c')
-rw-r--r--src/H5Dlayout.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/H5Dlayout.c b/src/H5Dlayout.c
index 991ad95..cb2eca2 100644
--- a/src/H5Dlayout.c
+++ b/src/H5Dlayout.c
@@ -101,6 +101,10 @@ H5D__layout_set_io_ops(const H5D_t *dataset)
dataset->shared->layout.storage.u.chunk.ops = H5D_COPS_BTREE;
break;
+ case H5D_CHUNK_IDX_NONE:
+ dataset->shared->layout.storage.u.chunk.ops = H5D_COPS_NONE;
+ break;
+
case H5D_CHUNK_IDX_SINGLE:
dataset->shared->layout.storage.u.chunk.ops = H5D_COPS_SINGLE;
break;
@@ -221,6 +225,10 @@ H5D__layout_meta_size(const H5F_t *f, const H5O_layout_t *layout, hbool_t includ
case H5D_CHUNK_IDX_BTREE:
HGOTO_ERROR(H5E_OHDR, H5E_BADVALUE, 0, "v1 B-tree index type found for layout message >v3")
+ case H5D_CHUNK_IDX_NONE:
+ /* nothing */
+ break;
+
case H5D_CHUNK_IDX_SINGLE:
/* Possible filter information */
if(layout->u.chunk.flags & H5O_LAYOUT_CHUNK_SINGLE_INDEX_WITH_FILTER) {
@@ -405,6 +413,14 @@ H5D__layout_set_latest_indexing(H5O_layout_t *layout, const H5S_t *space,
layout->storage.u.chunk.idx_type = H5D_CHUNK_IDX_SINGLE;
layout->storage.u.chunk.ops = H5D_COPS_SINGLE;
} /* end if */
+ else if(!dcpl_cache->pline.nused &&
+ dcpl_cache->fill.alloc_time == H5D_ALLOC_TIME_EARLY) {
+
+ /* Set the chunk index type to "none" Index */
+ layout->u.chunk.idx_type = H5D_CHUNK_IDX_NONE;
+ layout->storage.u.chunk.idx_type = H5D_CHUNK_IDX_NONE;
+ layout->storage.u.chunk.ops = H5D_COPS_NONE;
+ } /* end else-if */
else {
/* Set the chunk index type to Fixed Array */
layout->u.chunk.idx_type = H5D_CHUNK_IDX_FARRAY;