[svn-r22636] Description:
Bring r22599:22634 from trunk to revise_chunks branch
Tested on:
Mac OSX/64 10.7.4 (amazon) w/gcc 4.7.x, C++ & FORTRAN
(No need for h5committest yet on this branch)
[svn-r22600] Description:
Bring r22251:22599 from trunk to revise_chunks branch.
Tested on:
Mac OSX/64 10.7.4 (amazon) w/gcc 4.7.1, C++ & FORTRAN
(Not h5committested yet, as this branch doesn't require it)
[svn-r22518] Added flush dependencies for SWMR to the local heap code.
Tested on jam. This branch still has h5diff errors. The library tests
all pass, though.
[svn-r22515] Converted local heap (H5HL) code to use the new enter/leave/error macro
scheme. Also created separate prefix and data block files so that the
local heap code more closely resembles the rest of the data structures.
Tested on jam. This branch still has h5diff errors. The library tests
all pass, though.
[svn-r22512] Added BEGIN_FUNC_VOID and END_FUNC_VOID macros to support void functions
under the new error handling macro scheme.
Also added some helpful comments and cleaned up some formatting.
Tested on jam, which has h5diff errors at this time. The library tests
all pass so I'm going to check this in.
[svn-r22422] Purpose: Add support for SWMR with v2 b-trees
Description:
Adds SWMR support to the v2 b-trees when used as a chunk index. Because each
node keeps track of the total number of records reachable through each of its
children, nodes must be shadowed every time a descendent record is inserted or
removed. This implementation prevents this from happening, however, if the node
has already been shadowed since the last time the v2 b-tree header was flushed.
Also modified SWMR test to i...
[svn-r22255] Fix windows compile errors:
vs2008 needed H5private.h in H5Oflush.c
VS needs windows export decoration (H5DLLVAR) in header used by source file of origin
Tested: windows
[svn-r22254] Description:
Bring r22085:22251 from trunk to revise_chunks branch.
Also tackle some testing issues in test/objcopy.c test and clean up
some warnings.
Tested on:
FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
FreeBSD/64 8.2 (freedom) w/gcc4.6, 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 (koala) w/Intel c...
[svn-r22187] Purpose: Fix dsets failure on ostrich
Description:
The "support" and "unsupport" chunk index callbacks took H5D_chunk_common_ud_t
udata pointers, which seems reasonable because the udata is only needed to
locate the chunk, and does not need to return anything to the callers. However,
for v1 b-trees, H5D_btree_found must be called in order to locate the chunk, and
this function assumes that the udata is an H5D_chunk_ud_t and writes to fields
that are not in H5D_chunk_common_ud_t...
[svn-r22127] Purpose: Fix earray failure
Description:
In H5Dearray.c, functions would "swizzle" the chunk offset and "down" number of
chunks in order to more the unlimited dimension to be the first dimension, but
they would not swizzle the chunk dimensions. This could cause two chunks to
have the same index, causing problems. Modified code to swizzle the chunk
dimensions, and added a test.
Note: There is still a problem with h5watch that appears to be unrelated.
Tested: durandal
[svn-r22105] Description:
Bring r20557:22085 from trunk to this branch, also fixing some other
issues/failures in the branch simultaneously. The h5repack tests are still
failing, but Neil will be checking into those, so the branch can be fully
functional again.
Tested on:
Mac OSX/64 10.7.3 (amazon) w/debug
[svn-r22062] Purpose: Fix bugs in chunk cache's SWMR implementation
Description:
Two issues were found with the chunk cache's SWMR implementation:
1. Some places were not properly setting the rdcc field in the index udata
struct. Fixed. May eventually need to add an rdcc field to the idx_info
struct.
2. While recalculating the indices for chunks in a dataset being resized, it was
possible for the chunk cache to attempt to flush a chunk before all the
indices were updated, whi...
[svn-r21989] Purpose: Add SWMR capability to v1 b-tree
Description:
Adds SWMR capability to v1 b-trees, and the chunk index using v1 b-trees. With
this implementation, flush dependencies are always on when in the cache. This
will allow attritbutes to be used for "checkpointing" data when object header
dependencies are fixed - i.e. if a writer writes data before an attribute in
that dataset's object header, then if a reader sees the updated attribute the
written data is guaranteed to be vis...
[svn-r21938] Fix for bad makefile clean code that removes hl/test/test_ld and hl/tools/h5watch .h5 files. These files are never regenerated and subsequent make checks after a clean will fail. This is just a temporary fix as the generator code and autotools files need a revisit.
[svn-r20555] Purpose: Improve performance when edge chunk filters are disabled with no chunk
cache.
Description:
When edge chunk filters and the chunk cache are disabled, the library would
previously go through the lock/unlock routines then immediately evict the chunk
as is done for filtered datasets, even for the unfiltered edge chunks. This
forced the entire chunk to be read/written, even if only part of the chunk was
selected. Modified the chunk cache to detect this case, and read/write...
[svn-r20196] This checkin consists of the following:
A) - Changes to add the new tool "h5watch" to High Level
- Changes to add three new High Level public routines for retrieving elements appended to a dataset
B) A patch from Mike M. to fix the H5Dflush/refresh problem:
src/H5Dpkg.h
src/H5Dint.c
src/H5D.c
C) Fix for an assertion failure in H5FS_sect_link_size() in H5FSsection.c
src/H5Dbtree2.c
h5committested; tested also on linew, duty, fred.
[svn-r19879] Purpose:
Improve portability of flushrefresh test.
Description:
The flush/refresh API test was hanging on linew because
Solaris's 'date' tool does not recognize the "+%s" option,
which returns time since the epoch on other UNIXes.
There doesn't seem to be a good way to unify the tools,
however, Perl can be easily used for this function. I've
modified configure to always check for the existence of
Perl (previously it only did so if GNU compiler...
[svn-r19840] Description:
Check in Vailin's "implicit" chunk indexing code.
Tested on:
Mac OS X/32 10.6.5 (amazon) w/debug & production
(further testing upcoming shortly)
[svn-r19765] Purpose:
fix a few minor issues related to flush/refresh code
Description:
- Replaced the globality macros with an enum typedef, to
better encapsulate of the values that can be assigned
to the variable.
- Combined 'tag' and 'globality' properties into a single
property by creating a new structure housing both values,
since they are always accessed at the same time anyways.
- Added an extra parameter check to H5Tflush/H5Trefresh
rou...
[svn-r19739] Purpose:
Adjust flush/refresh tests to allow more time
for completion, and fix a bug that caused a
race condition between the test script and a
process it invokes.
Description:
Flush/refresh testing slows down considerably
with multiple (other) processes running in the
background, such as the case when -j option is
supplied to gmake when running the test suite.
I've extended the amount of time before the test
times out due to not r...
[svn-r19716] Description;
Correct use of default API calls to v2 API calls in test code.
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/...
[svn-r19714] Purpose:
Add API and supporting code to allow single object flushes and refreshes.
Description:
Added the following API calls:
H5Dflush / H5Drefresh
H5Gflush / H5Grefresh
H5Tflush / H5Trefresh
H5Oflush / H5Orefresh
Each H5*flush API flushes the targeted object's metadata,
while each H5*refresh evicts all metadata related to an object
and reopens the object (re-loading needed metadata from disk).
New files include src/H5Oflush.c, con...
[svn-r19669] Description:
Bring r19658:19668 from trunk to revise_chunks branch.
Tested on:
FreeBSD/32 6.3 (duty) w/debug
Linux/32 2.6 (jam) w/debug
(h5committest not required on this branch)
[svn-r19658] Description:
Fix incorrect placement of 'swmr_read' flag from write routine to
read routine. :-/
Tested on:
Mac OS X/32 10.6.4 (amazon) w/debug, production & parallel
(h5committest not required on this branch)