hdf5/test
Quincey Koziol 44a72a6777 [svn-r5502] Purpose:
Test Bug Fix

Description:
    Under certain [obscure] circumstances, an object header would get paged out
    of the metadata cache, and when it was accessed again and brought back into
    the cache, and immediately had additional metadata added to it (an
    attribute, usually, or perhaps adding an object to a group), and needed to
    be extended with a continuation message, but there was no room in any
    existing object header chunks for the continuation message and an existing
    object header message needed to be moved to the new object header chunk (I
    told you it was obscure :-), the object header message moved to the new
    chunk (not the new metadata being added) would get corrupted. *whew* :-)

Solution:
    Actually copy the "raw" object header message information of the object
    header message being moved to the new chunk, instead of relying on the
    "native" object header message information being re-encoded when the object
    header is flushed.  This is because when an object header is paged out of
    the metadata cache and subsequently brought back in, the "native"
    information pointer in memory is reset to NULL and only the "raw"
    information exists.

    [Actually, this additional testing doesn't trigger the bug, which needs
    _lots_ of objects to be created and accessed, but it does execise the
    object header continuation code more than other tests in the library.]

Platforms tested:
    Solaris 2.7 (arabica) & FreeBSD 4.5 (sleipnir)
2002-05-31 22:11:34 -05:00
..
big.c [svn-r5278] Purpose: 2002-04-28 03:34:17 -05:00
bittests.c
cmpd_dset.c
Dependencies [svn-r5159] Purpose: 2002-04-10 10:38:05 -05:00
dsets.c [svn-r5444] Purpose: 2002-05-20 13:43:31 -05:00
dtypes.c [svn-r5444] Purpose: 2002-05-20 13:43:31 -05:00
enum.c
extend.c
external.c
fill_old.h5 [svn-r5171] 2002-04-11 17:53:26 -05:00
fillval.c [svn-r5444] Purpose: 2002-05-20 13:43:31 -05:00
flush1.c
flush2.c
gass_append.c
gass_read.c
gass_write.c
gen_new_array.c
gen_new_fill.c [svn-r5171] 2002-04-11 17:53:26 -05:00
gen_old_array.c
getname.c [svn-r5186] 2002-04-16 12:39:38 -05:00
gheap.c
h5test.c [svn-r5491] Purpose: 2002-05-31 13:43:22 -05:00
h5test.h [svn-r5481] Description: 2002-05-29 13:40:29 -05:00
hyperslab.c [svn-r5468] Purpose: 2002-05-28 13:18:01 -05:00
istore.c [svn-r5468] Purpose: 2002-05-28 13:18:01 -05:00
lheap.c
links.c [svn-r5293] 2002-04-30 12:09:35 -05:00
Makefile.in [svn-r5502] Purpose: 2002-05-31 22:11:34 -05:00
mount.c
mtime.c
ohdr.c
set_extent.c [svn-r5313] 2002-05-01 10:54:56 -05:00
space_overflow.c
srb_append.c
srb_read.c
srb_write.c
stab.c [svn-r5444] Purpose: 2002-05-20 13:43:31 -05:00
stream_test.c
tarray.c [svn-r5191] Purpose: 2002-04-17 11:47:47 -05:00
tarrold.h5
tattr.c
tconfig.c [svn-r5278] Purpose: 2002-04-28 03:34:17 -05:00
testhdf5.c [svn-r4851] Purpose: 2002-01-23 16:28:24 -05:00
testhdf5.h [svn-r4851] Purpose: 2002-01-23 16:28:24 -05:00
testmeta.c
tfile.c [svn-r4851] Purpose: 2002-01-23 16:28:24 -05:00
tgenprop.c [svn-r4920] Purpose: 2002-02-07 14:55:43 -05:00
th5s.c
th5s.h5
titerate.c [svn-r4978] Purpose: 2002-02-16 21:51:21 -05:00
tmeta.c
tmisc.c [svn-r5502] Purpose: 2002-05-31 22:11:34 -05:00
trefer.c
tselect.c [svn-r5290] Purpose: 2002-04-30 09:46:18 -05:00
ttbbt.c
ttime.c
ttsafe_acreate.c [svn-r4978] Purpose: 2002-02-16 21:51:21 -05:00
ttsafe_cancel.c [svn-r4978] Purpose: 2002-02-16 21:51:21 -05:00
ttsafe_dcreate.c [svn-r4978] Purpose: 2002-02-16 21:51:21 -05:00
ttsafe_error.c
ttsafe.c
ttsafe.h
tvlstr.c [svn-r5200] Purpose: 2002-04-18 09:05:38 -05:00
tvltypes.c
unlink.c [svn-r5293] 2002-04-30 12:09:35 -05:00