diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2003-08-28 16:02:21 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2003-08-28 16:02:21 (GMT) |
commit | a3888a3b007e818f4178b053606c8d1b46f0fa1b (patch) | |
tree | 315bb1018c4d2bc20b01e9ad7ff82f8d008e7537 /src/H5Distore.c | |
parent | b89fbdd877c687edb489d02f5f286a33e9af251f (diff) | |
download | hdf5-a3888a3b007e818f4178b053606c8d1b46f0fa1b.zip hdf5-a3888a3b007e818f4178b053606c8d1b46f0fa1b.tar.gz hdf5-a3888a3b007e818f4178b053606c8d1b46f0fa1b.tar.bz2 |
[svn-r7426] Purpose:
Bug fix
Description:
When datasets are deleted from a file, they are removed from the sieve
buffer, but instead of invalidating only the part of the sieve buffer affected,
the sieve buffer code would throw away the entire sieve buffer, potentially
including other raw data in the buffer that hadn't been written to disk yet.
Solution:
Improve the sieve buffer clearing code to handle partial invalidations.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest
Diffstat (limited to 'src/H5Distore.c')
-rw-r--r-- | src/H5Distore.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/H5Distore.c b/src/H5Distore.c index 929a3e0..909007a 100644 --- a/src/H5Distore.c +++ b/src/H5Distore.c @@ -2662,7 +2662,7 @@ H5F_istore_remove(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_lt_key /*in,out FUNC_ENTER_NOAPI(H5F_istore_remove,H5B_INS_ERROR); /* Check for overlap with the sieve buffer and reset it */ - if (H5F_sieve_overlap_clear(f, addr, (hsize_t)lt_key->nbytes)<0) + if (H5F_sieve_overlap_clear(f, dxpl_id, addr, (hsize_t)lt_key->nbytes)<0) HGOTO_ERROR(H5E_OHDR, H5E_CANTFREE, H5B_INS_ERROR, "unable to clear sieve buffer"); /* Remove raw data chunk from file */ |