Commit Graph

23 Commits

Author SHA1 Message Date
Quincey Koziol
e5575571d4 [svn-r19396] Description:
Bring back various modifications to the v2 B-trees that were introduced
in the revise_chunks branch but aren't dependent on any file format or API
changes.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.4 (amazon) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-09-16 06:38:10 -05:00
Quincey Koziol
71a9d50725 [svn-r17943] Description:
Finish refactoring v2 B-trees so that they can have client callback
context provided to the encode/decode callbacks.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.2 (amazon) in debug mode
        Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-12-01 11:45:27 -05:00
Quincey Koziol
699a5ddec4 [svn-r17891] Description:
Switch the shared object header messages code to use the refactored
v2 B-tree routines.  (this should be the interface that is using them)

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.2 (amazon) in debug mode
        Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-11-13 23:48:37 -05:00
Quincey Koziol
f985e7d22f [svn-r17740] Description:
Refactor v2 B-tree code to take creation parameters to H5B2_create() as
a struct (instead of individual arguments), call the client's class "cls"
instead of "type" internally, and add client class name to client class struct.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.1 (amazon) in debug mode
        Mac OS X/32 10.6.1 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-10-24 14:16:06 -05:00
Quincey Koziol
b1512c79e5 [svn-r17429] Description:
Bring work from "compress group's fractal heap" branch back to trunk:
reove unnecessary v2 B-tree 'retrieve' callback from v2 B-tree clients.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-27 11:40:57 -05:00
Quincey Koziol
0490b17800 [svn-r13915] Description:
Clean up SOHM code, to copy message in H5HF_op call instead of separate
calls to H5HF_get_obj_len() and H5HF_read().

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    Linux/32 2.6 (chicago)
2007-06-26 11:10:29 -05:00
Quincey Koziol
c04a55d65e [svn-r13796] Description:
Clean up ISOHM code further and get rid of several non-optimal ways
of working with object headers.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.9 (amazon)
2007-05-22 21:16:41 -05:00
Quincey Koziol
31ff357f31 [svn-r13753] Description:
Check in "unique, but sharable" optimization to ISOHM code, which
allows object header messages that are only used in one object to remain in
the sole user's header, but migrates messages that are used in more than one
header into the ISOHM heap.

Tested on:
	Mac OS X/32 10.4.9 (amazon)
	FreeBSD/32 6.2 (duty)
	Linux/32 2.6 (chicago)
	Linux/64 2.6 (chicago2)
2007-05-14 15:24:08 -05:00
James Laird
30b8b8c785 [svn-r13340] Fixed a bug where shared messages with the same hash values could be sorted
in the wrong order.

This also makes the "unique but shareable" checkin a little easier.

Tested on smirom, kagiso, and juniper.
2007-02-19 19:23:19 -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
James Laird
25b96dc712 [svn-r13224] Fixed a bug where messages would report their "raw size" as the size of a
shared message rather than the full size of the unshared message, which
confused some shared message code.
Added a test that should make sure that some messages are too small to be
written to the deletion test in tsohm.c.

Also added a small optimization so that hash values don't need to be
calculated on deletes in list indexes.

Tested on Windows, smirom, and kagiso.
2007-01-30 15:40:44 -05:00
James Laird
632773727c [svn-r13159] Added h5debug support for shared message structures.
Tests run on juniper, kagiso, smirom.  h5debug run manually on sample files on
Windows, juniper, and kagiso.
2007-01-19 13:51:03 -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
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
James Laird
d8e4fcc410 [svn-r13135] Continuing code cleanup.
Moved SOHM table version out of table encoding and completely into superblock.
This is a file format change.
Added test that extends shared dataspaces.  Dynamically allocate arrays in
shared message cache code.  Clean up comments.

Tested on windows, kagiso, smirom.
2007-01-11 14:19:40 -05:00
James Laird
03fc4bb6f3 [svn-r13127] Refactoring. Cleaned up some buggy code when searching for messages in
B-trees.

Tested on Windows, smirom, and kagiso.
2007-01-09 14:18:14 -05:00
James Laird
6e40802f06 [svn-r13126] More cleanup. Shared messages now use in-heap callbacks when searching
for a matching message, which should improve performance.

Tested on Windows, kagiso, and smirom.
2007-01-09 10:11:16 -05:00
James Laird
869ed6e043 [svn-r13113] Refactoring. Cleaned up code, added a few sanity checks.
Extracted duplicated code into functions.

Tested on Windows, juniper, and kagiso.  Will test on copper next.
2007-01-05 13:30:59 -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
James Laird
87db6fed4f [svn-r13010] Cleaned up warnings in H5SM* files.
Cleaned up all warnings on kagiso.  Tested on kagiso and copper.
2006-12-01 20:32:31 -05:00
James Laird
772730f4d7 [svn-r13004] Much improved shared object header message test, along with some bug fixes
to make the test pass.

These changes involve changes to the file format of SOHMs, but that's okay
because nobody should have been using SOHMs yet anyway.

Tested on Windows, kagiso, copper, and heping
2006-12-01 10:51:42 -05:00
James Laird
e215d22a79 [svn-r12935] Added list-to-btree conversion, changed SOHM apis, and pushed SOHM table
version and size information into the superblock to eliminate a read when
loading it.

This is a file format change, and hopefully the last one (knock on wood).

Tested on kagiso and Windows (mostly just a SOHM change).
2006-11-17 14:39:14 -05:00
James Laird
b6c317f27c [svn-r12902] Checkin of Shared Object Header Message work.
This feature is still in progress; Shared Object Header Messages are not
complete as a feature and are not thoroughly tested.  There are still
"TODO" comments in the code (comments with the word "JAMES" in them,
so as not to be confused with other TODO comments).

Hopefully this checkin will reduce the liklihood of conflicts as I finish
implementing this feature.

All current tests pass on juniper, copper (parallel), heping, kagiso, and mir.
2006-11-13 15:41:36 -05:00