Commit Graph

1296 Commits

Author SHA1 Message Date
Quincey Koziol
5d2bddcd06 [svn-r12362] Purpose:
Code checkpoint

Description:
    Update fractal heap code to allow objects to be deleted

    Fix bugs in fractal heap object insertion

    Improve free space manager code to allow sections to be merged and
        shrink the container

    Another try at making the Windows compilers happy...

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OS X.4/PPC (amazon)
    Linux 2.4 (chicago & heping)
    Solaris 2.9 (shanti)
    AIX 5.? (copper) w/parallel
2006-05-22 11:43:45 -05:00
Albert Cheng
56c0a0f993 [svn-r12358] Purpose:
Bug fix.

Description:
The ${TR}, though avoid the error, is inconvenient.  It is needed
because configure.in use the char range in the style of 'a-z'.
The other style of '[a-z]' is more commonly accepted by all tr
but autoconf tends to strip away [], making the syntax rather
clumsy.

Solution:
Learned from autoconf that it avoids the use of character range
by just spell all the letters out.  Changed our tr commands to
use those variables defined by autoconf.  Also removed the
definition of ${TR} since it will cause inconsistancy when
autoconf also use plain 'tr' in its generated code.

The Makefile.in are changed because the elimination of ${TR} from
configure triggered its removal from all Makefil.in.  That is okay
because ${TR} is not used at all in Makefile.

Platforms tested:
h5committested. (sol failed to connected). also tested in shanti
using both /usr/ucb/tr and /bin/tr (the bad one before.)

Misc. update:
Updated both INSTALL and RELEASE files.
2006-05-19 07:22:07 -05:00
Quincey Koziol
7b6db1046b [svn-r12349] Purpose:
Code checkpoint

Description:
    Checkpoint fractal heap improvements, as well as move the free space
manager code that it's using into a separate package.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4/64 (mir) w/C++ & FORTRAN
    Linux 2.4/32 (heping)
    Solaris 2.9 (shanti)
    AIX 5.? (copper) w/FORTRAN & parallel
2006-05-14 23:35:53 -05:00
Raymond Lu
cbe0bc01f0 [svn-r12345] Purpose: Codes for backward compatibility.
Description: Function prototype H5E_walk_t and structure H5E_error_t wasn't backward
compatible.

Solution: Make them compatible with v1.6 and provide new definitions of H5E_walk_stack_t
and H5E_error_stack_t.

Platforms tested: fuss and h5committest.
2006-05-12 13:29:49 -05:00
Elena Pourmal
40054ee387 [svn-r12341]
Purpose: Maintenance

Description: dtypes.c compilation failed with gcc 4.1 due to the
             missing prototype of the opaque_funcs function.
             Failure was reported by a user who tried to build
             hdf5-1.8.0-alpha2.
             I reproduced the failure on sleipnir with gcc41
             compiler.

Solution: Added prototype definition.

Platforms tested: sleipnir with gcc41, heping and copper

Misc. update:
2006-05-08 15:31:21 -05:00
James Laird
14d12aebd0 [svn-r12327] Purpose:
Bug fix

Description:
A datatype wasn't being closed in th5s.c

Solution:
This minor oversight caused an error with my Object Header code.
The datatype is now closed in the test.

Platforms tested:
windows, mir, copper
2006-05-03 17:04:30 -05:00
Raymond Lu
1acc676fcf [svn-r12322] Purpose: Test some functions
Description: Test some data type functions that are and aren't supposed to work
with some data types.


Platforms tested: h5committest and fuss.
2006-05-02 14:42:41 -05:00
John Mainzer
720f6cb065 [svn-r12321] Purpose:
Bug fix


Description:

Fix two test bugs:

1) Unitialized variable bug in test of H5C_get_entry_status()
   (in test/cache.c)

2) Incorrect initialization of constant in t_cache when running
   with MPE. (in testpar/t_cache.c)


Solution:

1) Don't test uninitialize variable.

2) Correct initialzation of constant in MPE case.


Platforms tested:

Tested on Heping and Copper.


Misc. update:
2006-05-02 01:06:38 -05:00
Quincey Koziol
4965bf1839 [svn-r12317] Purpose:
Code checkpoint

Description:
    More progress on fractal heap, can now re-open an existing heap, although
the free space algorithm still needs work.

    Also, use the new "pinned entry" metadata cache code.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (heping)
    Solaris 9 (shanti)
    Linux 2.4/64 (mir)
2006-04-30 08:32:41 -05:00
Quincey Koziol
eb96132022 [svn-r12316] Purpose:
Code cleanup/feature twist

Description:
    Adjust recent H5AC routines to take H5F_t pointers instead of H5C_t
pointers, to match the rest of the H5AC routines.

    This change propagated into a few of the tests, which also had some
compiler warnings cleaned up...

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/parallel
    Linux 2.4/64 (mir) w/C++ & FORTRAN
2006-04-29 14:28:23 -05:00
John Mainzer
8a7b9b3221 [svn-r12311] Purpose:
Add pinned entry capability to cache.


Description:

For frequently accessed cache entries, the protect/unprotect overhead
is sometimes a bottleneck.


Solution:

Allow entries to be pinned in the cache.  Pinned entries can't be
evicted, but can be flushed or modified.


Platforms tested:

h5committested -- minus one small typo in test/cache.c whose fix was
                  tested on copper and heping only.


Misc. update:
2006-04-28 08:27:54 -05:00
James Laird
91e56dc68d [svn-r12295] Purpose:
Several bug fixes

Description:
Added config file for Cray X1 (previous file was misnamed)
Simplified some code in hyperslab.c test that seemed to have been
confusing compiler on Cray X1.
Fixed typo in config/commence.am
Cleaned up hl/src/Makefile.am

Solution:
All four fixes should be straightforward.  The failure on Cray was
very difficult to debug, but involved arithmetic errors.
This change seems to fix it.

Platforms tested:
heping, copper, sol, some Cray X1 (more testing when system comes back up)
2006-04-21 14:21:24 -05:00
Quincey Koziol
d7573cbc85 [svn-r12292] Purpose:
Code maintenance

Description:
    Remove flexible parallel code

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (heping)
    Solaris 2.9 (shanti)
    Linux 2.4/64 (mir)
2006-04-20 18:54:47 -05:00
Binh-Minh Ribler
7e5de2473b [svn-r12286] Purpose: Fix bug
Description:
    The file size test in C++ library failed on Copper because the
    value returned by h5_get_file_size was intepreted incorrectly
    due to different interger sizes.

Solution:
    H5private.h: Added check to use stat64 and off64_t where appropriate.
    h5test.c and h5test.h: used h5_stat_size_t in place of off_t.
    tattr.cpp: used h5_stat_size_t in place of off_t.

Platforms tested:
    Linux 2.4 (heping)
    AIX 5.1 (copper)
    SunOS 5.8 64-bit (sol) - still on going
2006-04-20 01:09:51 -05:00
HDF Admin
16d927b68b [svn-r12280] Purpose:
Bug fix.

Description:
It did not handle the case when version sub-release string is not
empty.

Solution:
Fixed the sed substitution to remove the sub-release string too.

Platforms tested:
Heping.
2006-04-19 13:39:21 -05:00
Quincey Koziol
0aa70b3748 [svn-r12259] Purpose:
Code checkpoint

Description:
    Add more regression tests for odd insertion patterns

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (heping)
    Linux 2.4/64 (mir)
    Solaris 2.9 (shanti)
2006-04-15 17:14:47 -05:00
Quincey Koziol
c83c1eb42d [svn-r12258] Purpose:
Code checkpoint

Description:
    Add in more fractal heap support for odd allocation patterns (entries that
are too large for various block sizes, etc.)

    Broke out fractal heap code into more source code modules.

    Refactored fractal heap test to make it more understandable and
maintainable for the long term.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (heping)
    Linux 2.4/64 (mir)
    Solaris 2.9 (shanti)
2006-04-15 16:11:42 -05:00
Quincey Koziol
2521c4084c [svn-r12254] Purpose:
Anti-feature

Description:
    Revert changes to H5G_stat_t struct, to make it compatible with the 1.6.x
branch again.  The information that was added to the H5G_stat_t struct will
be reported through other API routines.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/C++
    Linux 2.4/64 (mir) w/C++ & Fortran
    Solaris 2.9 (shanti)
2006-04-14 17:21:54 -05:00
Pedro Vicente Nunes
bc66efc788 [svn-r12229] Purpose:
new feature

Description:
1) separated the HL library into "public" and "private" header files, with the same caracteristics as the basic library
2) added the public headers to hdf5.h (with a conditional include macro, defined in configure.in)
3) added the path to HL in all Makefile.am 's , because of the inclusion in hdf5.h

Solution:

Platforms tested:
linux 32, 64
AIX
solaris
with fortran and c++

(one packet table example fails)

Misc. update:
2006-04-12 16:21:38 -05:00
Quincey Koziol
5a2c6b0ae1 [svn-r12221] Purpose:
"Hide" file format changes (for now)

Description:
    Add ifdef's (controlled by the --enable-group-revision configure flag)
to disable group revision changes to the file format, in order to allow alpha
release to go ahead without releasing an unsupported version into the wild.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 32-bit (heping)
    Linux 2.4 64-bit (mir)
    Solaris 2.9 (shanti)
2006-04-09 22:03:30 -05:00
Albert Cheng
e3cdaeab1c [svn-r12210] Purpose:
feature

Description:
Added the GetTestExpress and SetTestExpress to support the TestExpress mode
according to $HDF5TextExpress.  For now, it is just defined or not, the
actual value does not matter.

Platforms tested:
heping(serial), mir (PP).
2006-04-07 10:34:40 -05:00
Albert Cheng
d4a986445c [svn-r12209] Purpose:
Bug fix.

Description:
getenv_all would fail if one calls it without calling MPI_initialized first.
This may happen if one uses PHDF5 library to build a serial nature code
and does not make any MPI calls.

Solution:
Added code to detect if MPI has been initialized. If not, use the
original getenv.

Platforms tested:
heping (serial) and mir (parallel).
2006-04-07 10:00:47 -05:00
Quincey Koziol
d165e1d8e7 [svn-r12191] Purpose:
Bug fix

Description:
    Correct the handling of the group creation property list when copying
objects with the "create intermediate groups" flag.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest (once I pay attention to the compiler
warnings... :-)
2006-04-02 10:29:35 -05:00
Quincey Koziol
ea7a5346d7 [svn-r12190] Purpose:
Code checkpoint

Description:
    Update fractal heap code to allow skipping direct blocks (that are too
    small to hold object) when the root indirect block is created.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-04-01 16:09:48 -05:00
Quincey Koziol
4659f50b83 [svn-r12189] Purpose:
New/expanded features

Description:
    Check in Peter's changed for the object copy code:
        - Allow/fix copying datasets using named variable-length datatypes
        - Start adding framework for property list to control how object
            copying occurs.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-04-01 15:14:11 -05:00
Quincey Koziol
244fdb6d89 [svn-r12184] Purpose:
Code checkpoint

Description:
    Checkpoint recent additions to fractal heap code, which allow for better
support of objects that don't fit into current direct block, requiring
skipped direct blocks to be tracked in free section list.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago & heping)
    Linux 2.4 (mir) w/64-bit & FORTRAN & C++
    Mac OSX (amazon)
2006-03-31 10:43:14 -05:00
Raymond Lu
437418e7ca [svn-r12182] Purpose: Change comment.
Description: Changed comment to better describe the code.


Platforms tested: No test is needed.
2006-03-30 15:05:56 -05:00
Raymond Lu
dce0df4607 [svn-r12175] Purpose: Changed Dataset Name
Description: As requested by Pedro, changed the data set name from "IntArray" to
"Array".


Platforms tested: fuss and shanti - simple change.
2006-03-30 08:31:29 -05:00
Quincey Koziol
935d75c50d [svn-r12162] Purpose:
Code checkpoint

Description:
    Check in fractal heap code to add basic support for skipping direct blocks
when an object is too large to fit in one.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
2006-03-28 09:03:46 -05:00
Quincey Koziol
87050be33e [svn-r12161] Purpose:
Code checkpoint

Description:
    Checkpoint fractal heap code at a stable point in development.  It appears
that adding objects to heaps and reading them back out is now working
properly (as long as there are no gaps in the heap and no standalone objects
are created).

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Linux 2.4 (mir) w/64-bit & FORTRAN & C++
    Solaris 9 (shanti) w/64-bit
2006-03-27 16:57:50 -05:00
Raymond Lu
981fe01dd1 [svn-r12151] Purpose: New test
Description: cross_read.c is a new program to test reading data created
on an OpenVMS, a little-endian, and a big-endian machine.  The three
data files are vms_data.h5, be_data.h5, and le_data.h5.  To generate
these data files, run gen_cross.c on these machines and change the file
names.


Platforms tested: fuss and h5committest

Misc. update: MANIFEST
2006-03-24 14:36:44 -05:00
James Laird
93aa12407f [svn-r12149] Purpose:
Bug fix

Description:
Previous checkin did a bad thing; 'make clean' failed in example directories.

Solution:
Fixed commence.am so that examples no longer break, and fixed a mistake
in conclude.am.

Platforms tested:
heping (minor makefile change)

Misc. update:
2006-03-23 16:26:17 -05:00
James Laird
524d25498f [svn-r12143] Purpose:
Bug fix

Description:
make check-clean didn't clean results of example tests

Solution:
Fixed Makefiles so that check-clean recurses into example directories.
Also a little Makefile cleanup.

Platforms tested:
mir, modi4, heping, copper
2006-03-23 09:22:34 -05:00
Raymond Lu
9a560ba31a [svn-r12137] Purpose: Update
Description: OpenVMS doesn't support denormalized floating-point values.
Disable the denormalized and special values for floating to floating-point
tests.


Platforms tested: OpenVMS - the only concerned machine.

Misc. update:
2006-03-22 16:43:24 -05:00
Quincey Koziol
3424f9f5d1 [svn-r12128] Purpose:
Code cleanup

Description:
    Clean up some compiler warnings (esp. those flagged on Windows builds)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-22 13:11:24 -05:00
Quincey Koziol
2db47ff504 [svn-r12125] Purpose:
Code checkpoint

Description:
    Update fractal heap code to insert & read heaps up to 64MB in size
(with my current configuration paramaters) and add initial support for
iteratively walking down nested indirect blocks.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Solaris 9 (shanti)
    Linux 2.4 (mir) w/64-bit
2006-03-20 21:59:06 -05:00
Quincey Koziol
a53790e16a [svn-r12122] Purpose:
Code update

Description:
    Add basics of routine for reading information back out of a fractal heap.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-18 16:33:48 -05:00
Quincey Koziol
2315bc4dda [svn-r12118] Purpose:
Checkpoint code

Description:
    Rework code to support increasing size of root indirect block, in order
to add [at least] a second row of direct blocks.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 9 (shanti) w/64-bit
    Linux 2.4 (mir)
2006-03-17 22:16:40 -05:00
Raymond Lu
e2a8d4e044 [svn-r12116] Purpose: Bug fix.
Description: Two semicolons were missing in the code change for VAX support.

Solution: Fixed.

Platforms tested: fuss - too simple.

Misc. update:
2006-03-17 15:47:21 -05:00
Raymond Lu
f533416713 [svn-r12106] Purpose: Minor change
Description: changed macro VMS to H5_VMS


Platforms tested: no test needed
2006-03-16 15:26:36 -05:00
Quincey Koziol
49ab3665aa [svn-r12093] Purpose:
Code checkpoint

Description:
    Checkpoint fractal heap changes - mostly internal changes to better
handle more direct blocks from root indirect block.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Mac OS X (amazon)
2006-03-15 15:16:04 -05:00
Raymond Lu
a2a98a8135 [svn-r12091] Purpose: Support for VAX floating-point types.
Solution: Support VAX float and double types with new byte order. There're some
details not yet included,
1. the alignment detection for VAX order in H5detect.c.
2. support for special values in library conversion functions.
3. the infinity for VAX in H5T_init_inf.
4. support for VAX types in printing hexadecimal format.


Platforms tested: h5committest and fuss.
2006-03-14 17:11:21 -05:00
Quincey Koziol
ee3fdc2dbc [svn-r12084] Purpose:
Code checkpoint

Description:
    The fractal heap code is reasonably stable and is passing all its
current tests, so checkpoint everything with CVS.

    Also, add "statistics" module for v2 B-trees code, which is only a
stub right now.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX (amazon)
    Linux 2.4 (chicago)
2006-03-13 14:47:16 -05:00
Quincey Koziol
1f41dfca05 [svn-r12078] Purpose:
New features

Description:
    Add "find node greater than or equal to key" and "remove first" operations
to skip lists.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-11 16:59:01 -05:00
Elena Pourmal
be337d4e20 [svn-r12055] Purpose: VMS port
Description: By default on VMS system file cannot be opened twice; also
             VMS has file versioning. This brakes some of our tests.

Solution:
             Tests are commented out with H5_CANNOT_OPEN_TWICE and H5_HAVE_FILE_VERSIONS
             that are defined in the vms/h5pubconf.h file only. This change cannot affect
             any other platform.

Platforms tested: heping, VMS server

Misc. update:
2006-03-09 16:34:34 -05:00
Leon Arber
840bcbe9ef [svn-r12019] Purpose:
Bug fix/Feature

Description:
Modify the library to use rand_r, when available, instead of srand.  If
rand_r is not available, it will try to use srandom/random, and then finally
fall back to srand/rand.

Solution:
A couple places in the library use the srand() function to seed the random
number generator.  This can cause problems on certain platforms and could theoretically
cause problems for users who expect a certain sequence of random numbers following their
own call to srand().

Most platforms have an implementation of rand_r, which is identical to rand, except that
it allows for explicit storage of the seed value.  The configure script will now check
for the existence of rand_r to facilitate its use in the library.

Two new functions are added, to replace the macros HDsrand/HDrand.  These functions are HDrand and
HDsrand.  HDrand will call rand_r, if available, or random(), if available, and fall back to rand() if neither
of those is available.  HDsrand will store the seed value locally, if rand_r is available.  Otherwise, it will call
srandom if available, and fall back to srand otherwise.


Platforms tested:
heping, mir.  Really need to test on Red Storm, since that platform motivated this fix, but the machine
is currently not available.

Misc. update:
2006-03-06 23:23:24 -05:00
Quincey Koziol
4efe32d542 [svn-r12018] Purpose:
Bug fix

Description:
    Uncomment tests

Platforms tested:
    Linux 2.4 (mir) - 64-bit
2006-03-06 22:26:50 -05:00
Quincey Koziol
0f8fa98da0 [svn-r12008] Purpose:
Bug fix (sorta)

Description:
    Disable the fractal heap tests until I can look into them more thoroughly.
(they are failing on 64-bit machines currently)

Platforms tested:
    None - trivial change.
2006-03-06 04:47:37 -05:00
Quincey Koziol
dfbf976509 [svn-r12004] Purpose:
New feature & code cleanup

Description:
    Update fractal heap to be able to insert objects into a direct block
hanging off the header.

    Extract "octal dump" code into separate routine so that both the local
heaps & fractal heaps can use it.

    Other code cleanups & support to get this far.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4
2006-03-04 17:56:44 -05:00
Quincey Koziol
658bf4a8fb [svn-r11968] Purpose:
Incrementtal checkin

Description:
    Revise & update v2 B-tree code to separate the internal package-specific
routines from the library-callable "private" routines.

    Similar updates for the fractal heap code.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX (amazon)
2006-02-27 09:52:21 -05:00