diff options
author | Albert Cheng <acheng@hdfgroup.org> | 2006-06-29 18:06:16 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 2006-06-29 18:06:16 (GMT) |
commit | 026e4e531a088888ed70d1656e13c3317736dc66 (patch) | |
tree | b6f3b8627f1fe15300566b9f61512e10a9776672 /src/H5D.c | |
parent | 7637b679337e4f8e6b260f6f94477ebd65622b5e (diff) | |
download | hdf5-026e4e531a088888ed70d1656e13c3317736dc66.zip hdf5-026e4e531a088888ed70d1656e13c3317736dc66.tar.gz hdf5-026e4e531a088888ed70d1656e13c3317736dc66.tar.bz2 |
[svn-r12445] Purpose:
Bug #281
Description:
The previous fix for bug #281 was not safe. Files got corrupted in
some cases. Needs a more comprehensive fix for it. Undo the unsafe
fix for now.
Platforms tested:
h5committested.
Diffstat (limited to 'src/H5D.c')
-rw-r--r-- | src/H5D.c | 12 |
1 files changed, 5 insertions, 7 deletions
@@ -2918,7 +2918,7 @@ H5D_extend (H5D_t *dataset, const hsize_t *size, hid_t dxpl_id) HGOTO_ERROR(H5E_DATASET, H5E_WRITEERROR, FAIL, "unable to update cached chunk indices") /* Allocate space for the new parts of the dataset, if appropriate */ - if(dataset->shared->alloc_time == H5D_ALLOC_TIME_EARLY || IS_H5FD_MPI(dataset->oloc.file)) + if(dataset->shared->alloc_time == H5D_ALLOC_TIME_EARLY) if(H5D_alloc_storage(dataset->oloc.file, dxpl_id, dataset, H5D_ALLOC_EXTEND, TRUE, FALSE) < 0) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to initialize dataset with fill value") } /* end if */ @@ -3092,13 +3092,11 @@ H5D_alloc_storage (H5F_t *f, hid_t dxpl_id, H5D_t *dset/*in,out*/, H5D_time_allo init_space=1; } /* end if */ - /* If (space allocation is set to 'early' or file is opened - * by parallel mode) and we are extending the dataset, - * indicate that space should be allocated, so the - * B-tree gets expanded. -QAK + /* If space allocation is set to 'early' and we are extending + * the dataset, indicate that space should be allocated, so the + * B-tree gets expanded. -QAK */ - if((dset->shared->alloc_time == H5D_ALLOC_TIME_EARLY || - IS_H5FD_MPI(dset->oloc.file)) && + if(dset->shared->alloc_time == H5D_ALLOC_TIME_EARLY && time_alloc == H5D_ALLOC_EXTEND) { init_space=1; |