Commit Graph

36 Commits

Author SHA1 Message Date
Quincey Koziol
a127510b7b [svn-r13486] Description:
Move attribute tracking information out of object header prefix and
make it into a message that is inserted only when attributes are present on
the object.

Tested on:
	FreeBSD/32 6.2 (duty)
2007-03-09 23:56:53 -05:00
Quincey Koziol
74a30fff3e [svn-r13477] Description:
The main purpose of this checkin was to eliminate the
space used for tracking creation time indices when there is no way they
can be used (i.e. attributes can't be shared in the file and the user hasn't
turned on attribute creation tracking), however there were some other minor
changes which crept in:
	- Fix a cache locking deadlock when a shared attribute and one of its
		components end up in the same fractal heap direct block.  
		(This is fixed the "slow" way for right now, until John has time
		to add support for readers/writer locking to the cache.
	- Optimize attribute copying when a copy will be kept during a v2 B-tree
		search.
	- When freeing a block on disk, attempt to merge it with the metadata
		and "small data" aggregators.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-03-08 15:10:12 -05:00
Quincey Koziol
d08fabd66d [svn-r13353] Description:
Checkpoint progress on H5Aiterate2().

    Mark H5Aiterate() as deprecated.

    Various code cleanups.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-02-20 14:58:09 -05:00
Quincey Koziol
ca9a624416 [svn-r13344] Description:
More progress on attribute deletion by index.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-02-20 10:20:10 -05:00
Quincey Koziol
d1a1f2421d [svn-r13341] Description:
Checkpoint "delete by index" code, which is partially finished.

Tested on:
	FreeBSD/32 6.2 (duty)
2007-02-19 21:28:41 -05:00
Quincey Koziol
56e63bdeea [svn-r13287] Description:
Add H5Aget_info_by_idx & H5Aget_name_by_idx routines, along with
refactoring underlying indices code to handle those sort of queries.

	Simplify the link callback routines a bit.

	Minor other cleanups.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-02-13 09:50:48 -05:00
Quincey Koziol
e4d94d7943 [svn-r13267] Description:
Add more support for creation order index operations to attributes:
get deletions & compact<->dense storage transitions working.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.8 (amazon)
2007-02-07 20:12:08 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Quincey Koziol
d47a060445 [svn-r13250] Description:
Add support for inserting attributes into creation order index.

	Also, update support for dense link & attribute storage in h5debug.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.8 (amazon)
2007-02-06 21:18:17 -05:00
Quincey Koziol
c560e68258 [svn-r13240] Description:
More cleanups on the object header message handling code, to make it
easier to work with and move forward on the creation order coding.

	Various other minor cleanups & warning fixes.

Tested on:
	FreeBSD/32 6.2 (duty)
2007-02-05 17:26:44 -05:00
Quincey Koziol
0a8bba9153 [svn-r13232] Description:
Remove the "scaffolding" for shared message method invocation and
simplify the way shared messages are dealt with in general.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.8 (amazon)
2007-02-04 02:37:15 -05:00
Quincey Koziol
f555ac654b [svn-r13226] Description:
Add attributes to the message classes that use the shared message
method calling interface, completing the transition.  The other mechanism will
be removed shortly.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-01-30 20:48:28 -05:00
Quincey Koziol
7c733b0afb [svn-r13223] Description:
Move datatype messages into new shared message method interface

    Clean up various formatting & compiler warnings

    Minor optimizations

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-30 13:43:28 -05:00
Quincey Koziol
46598f35ca [svn-r13155] Description:
Add "set_crt_index" and "get_crt_index" methods for the object header
message class.

    Unify fractal heap definitions for shared messages and attributes, under
"object header" fractal heap definitions.

    Initial code for adding creation order index to object header messages.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-19 09:54:46 -05:00
James Laird
26fc682d8d [svn-r13153] Added checksum to superblock and driver info block (in latest version of
superblock).
Tried to standardize sizes and added #defines to H5Fpkg.h so that hopefully
the code is a little easier to read.
Of course this is a file format change.

Tested on Windows, juniper, smirom, kagiso.
2007-01-18 10:27:14 -05:00
Quincey Koziol
9155785889 [svn-r13152] Description:
Add anotherdense/shared attribute test.

	Clean up minor attribute/object header codelets, in preparation for
adding creation index to attributes.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-01-18 09:32:27 -05:00
James Laird
8fa9daa174 [svn-r13143] Refactoring.
Added can_share callback for OH messages.  This determines whether the
message is allowed to be shared in the heap (committed and immutable datatypes
can't be).
Fixed a bug in the dense attribute storage that tried to open the shared message
heap when it hadn't been created yet.
Made the test to extend shared dataspace messages a bit more robust.
Refactored the code the searches a shared message list index to be a little
more efficient.
A few other minor changes.

Tested on smirom, kagiso, Windows, and juniper.
2007-01-16 12:19:11 -05:00
Quincey Koziol
1f3ffdab86 [svn-r13130] Description:
Further tests & bugfixes for shared/committed components of shared/un-
shared attributes using dense/compact storage.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.1 (duty)
2007-01-09 23:01:31 -05:00
Quincey Koziol
26d2abe9e8 [svn-r13128] Description:
More progress on address bugs in combinations of shared/committed/unshared
components of shared/unshared attributes in compact/dense storage.  (Yes, there
are a lot of combinations. :-)

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-09 15:07:04 -05:00
Quincey Koziol
d978a22b36 [svn-r13121] Description:
Add support & tests for using shared datatypes with shared & un-shared
attributes.  Involves some fairly icky code to make the "copy on write"
paradigm for shared attributes work.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-08 17:25:26 -05:00
Quincey Koziol
a4527a631c [svn-r13120] Description:
Add support for deleting deleting dense storage when no compact
storage will be used.

	Change shared message's "get heap address" routine to return
address in parameter instead of return value, to allow better error
detection.

	Start writing tests for shared attributes which use shared 
components (datatypes or dataspaces)

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.1 (duty)
2007-01-08 10:47:56 -05:00
Quincey Koziol
327ea3a766 [svn-r13116] Description:
Add support for deleting all the attributes on an object, when they
are dense and possibly shared.

	Also, add some testing routines, for better error detection.

	Should fix daily test failures also...

Tested on:
	FreeBSD/32 6.1 (duty)
2007-01-06 15:54:19 -05:00
Quincey Koziol
a15089ee73 [svn-r13104] Description:
Add support for renaming compact & dense/shared & non-shared attributes in 
all cases.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-03 14:34:15 -05:00
Quincey Koziol
76ee1b2bda [svn-r13096] Description:
Fix updating values of shared attributes in dense storage & add test.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-02 15:21:44 -05:00
Quincey Koziol
8081ee4221 [svn-r13095] Description:
Minor edits on the way to testing writing to shared attributes in dense
storage.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	Too minor to require h5committest
2007-01-02 09:20:35 -05:00
Quincey Koziol
de9088b6bb [svn-r13079] Description:
Add more tests for checking that writing to shared attributes works
correctly.  (Looks like it still has a bug when dense storage is used, which
I'll correct shortly).

    Add testing routine to shared message code, to retrieve reference count for
a shared message.

    Add fractal heap 'op' callback for efficiently computing the hash value of
an existing encoded message in the shared message fractal heap.

    Various minor cleanups and warning placations.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-19 15:18:26 -05:00
Quincey Koziol
43ec5b7ef4 [svn-r13074] Description:
Add support for opening attributes in dense and/or shared storage by
index.

    Move routines for building and operating on tables of attributes into
separate source module.

    Fix bug where reverting from "dense" to "compact" storage would 'unshare'
attributes.

    Minor code cleanups, etc.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-18 20:59:28 -05:00
Quincey Koziol
9769d008b0 [svn-r13072] Description:
Push support for shared attributes into more dark corners of the "dense"
attribute storage support.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-18 16:06:44 -05:00
James Laird
9236c9a148 [svn-r13065] Added support for copying shared messages (including turning unshared
messages to shared messages and vice versa).

Extended objcopy test to test all "permutations" of shared/unshared and
new/old group format.  If this proves to take a long time to test, I'll
go back and have it run fewer tests when HDF5_TEST_EXPRESS is enabled. 

Tested on smirom, kagiso, copper, and Windows.
2006-12-15 16:28:17 -05:00
Quincey Koziol
d694a6897c [svn-r13058] Description:
Clean up some shared message operations and other minor tweaks, in the
process of trying to solve the messy way that shared object header messages
are implemented in general (not James' work - which is fine :-)

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    AIX/32 5.? (copper)
2006-12-12 22:19:43 -05:00
Quincey Koziol
e9522de4e1 [svn-r13056] Description:
Add H5SM_type_shared() internal routine to determine if a particular
type of header message is sharable in a file.

    Correct off-by-one error in computing B-tree record size for densely
stored attributes' name index.

    Further progress toward supporting shared attributes in dense storage.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-12 15:28:48 -05:00
Quincey Koziol
bda52fdd68 [svn-r13051] Description:
Minor code neatening, before making snapshot...

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-12 10:10:57 -05:00
Quincey Koziol
2f665b89ce [svn-r13047] Description:
Add "attribute exists" internal routine to make verifying that an attribute
with the same name doesn't already exist easier.

    Tweak "trace" script to produce more whitespace in H5TRACE macros, in order
to make them easier to read.

    Minor other whitespace cleanups

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-11 20:49:59 -05:00
Quincey Koziol
a867b8f5fd [svn-r13045] Description:
Switch from using H5L_index_t/H5L_INDEX_<foo> to H5_index_t/H5_INDEX_<foo>
in order to accommodate indices on aspects of attributes as well as links.

    Add basic support for deleting attributes in dense storage (needs more
support/tests for shared attributes in dense storage still).

    Misc. cleanups, etc.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-11 19:42:19 -05:00
Quincey Koziol
dc73eca159 [svn-r13041] Description:
Migrate "internalish" attribute operations into new source code file.

    Add test & basic support for opening attributes in dense storage (shared
attributes not tested or supported yet).

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-11 14:02:38 -05:00
Quincey Koziol
7b368f006e [svn-r13028] Description:
Add first pass of "dense" attribute storage to objects.  Lots of parts of
this are stubbed out, but all the tests are passing and I'll work on the corner
cases soon.

    Eliminated several unused parameters from object header message callback
routines.

    Other, miscellaneous code cleanups, etc. (and probably some things I've
forgotten about... :-)

Tested on:
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    AIX/32 5.? (copper)
2006-12-06 17:19:52 -05:00