Commit Graph

4247 Commits

Author SHA1 Message Date
HDF Tester
3485ecf8f4 [svn-r16506] Snapshot version 1.9 release 32 2009-02-22 05:19:33 -05:00
Elena Pourmal
2c86dad5bb [svn-r16504] Maintenance: Fixed a typo discovered while compiling on AIX system
Platforms tested: Mac OSX and AIX (by Ed) (minor fix)
2009-02-20 17:02:08 -05:00
Quincey Koziol
771d1c8a36 [svn-r16499] Description:
Cache chunk info for newly created chunk.

Tested on:
	FreeBSD/32 6.3 (duty)
	(Tests included in upcoming revise_chunks branch changes)
2009-02-19 18:51:31 -05:00
Allen Byrne
5d69e87ff0 [svn-r16489] Fixed bug #1459 by eliminating the macro long_long and replacing all instances with long long.
Tested:
   h5comittest
   fedora 10 x64
   Vista 32, VS2005, IVF101
   XP32, Cygwin
2009-02-18 15:02:05 -05:00
Quincey Koziol
85dc39846e [svn-r16488] Description:
Clean up code and eliminate resource leaks.  Also avoid "null" I/O when
chunk doesn't exist and we can skip it.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (too minor to require h5committest)
2009-02-17 18:17:07 -05:00
HDF Tester
a717a20e76 [svn-r16484] Snapshot version 1.9 release 31 2009-02-15 10:57:20 -05:00
Quincey Koziol
ca0a3e2853 [svn-r16483] Description:
Clean up (i.e. remove) more internal calls to H5E_clear_stack(), along with
some other minor code cleanups.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (too minor to require h5committest)
2009-02-12 17:41:52 -05:00
Neil Fortner
0bdedf0a39 [svn-r16480] Purpose: Improve chunk cache
Description:
The meaning of the "nbytes" field in H5D_rdcc_t was not clear, and some places
assumed it was the maximum size of the chunk cache, while some assumed it was
the current size of the chunk cache.  The end result was that only 1 chunk could
be held in cache at a time.  This field has been replaced by "nbytes_max" and
"nbytes_used".  Performance of cached I/O should improve greatly.

Tested: jam, smirom (h5committest)
2009-02-12 15:46:32 -05:00
Neil Fortner
02fd491bf0 [svn-r16477] Purpose: Fix problem with opening an attribute multiple times through multiple
file handles.

Description:
An attribute's "oloc" field which specifies the file it resides in was located
in the attribute's "shared" structure.  So when an attribute was opened multiple
times all of the handles for that attribute pointed to the same file id, even if
different file id's were used to open the different handles for the attribute.
The "oloc" has been moved to the top level H5A_t struct.

Tested: jam, smirom (h5committest)
2009-02-12 14:06:37 -05:00
Neil Fortner
3c483bd078 [svn-r16475] Purpose: Fix rare error when adding a new object header message
Description:
Since the new object header format, it has been possible for a situation to be
created where none of the messages are large enough to hold a continuation
message and there are no null messages to merge with.  This makes it impossible
to add a new object header chunk.  This case will now be handled by moving every
message in the last chunk to the newly allocated one, except for null messages
which are deleted.

Tested: jam, smirom (h5committest)
2009-02-12 13:59:11 -05:00
Neil Fortner
fb81174e76 [svn-r16473] Purpose: fix problems related to 'self-referential' attributes
Description:
When an attribute was created with a datatype or dataspace that was shared in
the same object header that the attribute was in, the attribute could not be
deleted.  Changes made to ensure that the attribute can be deleted both when the
attribute is in the object header and when it is shared in the heap.  Object
header message decode routines now take an "open_oh" parameter to enable them to
avoid opening the same object header twice.

Tested: jam, smirom (h5committest)
2009-02-12 13:47:04 -05:00
Raymond Lu
725b4d7ddb [svn-r16465] Performance Improvement(bug #1450). When a chunk is bigger than the cache size and isn't allocated
on disk, the library still loaded it in the cache, which is redundant.  I changed it to bypass the
cache and added a test in dsets.c.

Tested on jam and smirom.
2009-02-11 13:49:17 -05:00
HDF Tester
3e8fae1bee [svn-r16453] Snapshot version 1.9 release 30 2009-02-08 05:15:02 -05:00
Vailin Choi
f65a6a6473 [svn-r16436] Checkin for moving messages forward into continuation message:
src/H5Oalloc.c, test/ohdr.c, toshm.c
Fixed couple of problems in src/H5Odbg.c.
2009-02-05 10:29:27 -05:00
Quincey Koziol
ba149f834f [svn-r16414] Description:
Eliminate some more calls to H5E_clear_stack() from within library code.

    Clean up some warnings & comments also.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (Too minor to require h5committest)
2009-02-03 18:42:24 -05:00
Quincey Koziol
348c380e3f [svn-r16401] Description:
Correct error introduced in r16353 with layout version, and add test
so it gets caught earlier.

Tested on:
	FreeBSD/32 6.3 (duty)
	Too minor to require h5committest
2009-02-02 20:41:51 -05:00
Quincey Koziol
1528a6ad07 [svn-r16399] Description:
Remove some internal calls to H5E_clear_stack().

Tested on:
	FreeBSD/32 6.3 (duty)
	Too minor to require h5committest
2009-02-02 15:53:25 -05:00
HDF Tester
01d8f959f9 [svn-r16397] Snapshot version 1.9 release 29 2009-02-01 07:32:57 -05:00
Quincey Koziol
3b8b18d16e [svn-r16394] Description:
Rename H5O_msg_read_real -> H5O_msg_read_oh, to be more consistent with
other routines in library.

	Move H5O_msg_read_oh and H5O_msg_exists_oh from package to private
header file, so other routines in library can use them.

Tested on:
	FreeBSD/32 6.3 (duty)
	Too minor to require h5committest
2009-01-31 21:31:34 -05:00
Quincey Koziol
940f64156b [svn-r16391] Description:
Add more metadata statistics to extensible array header.

Tested on:
	FreeBSD 6.3 (duty)
	(too minor to require h5committest)
2009-01-31 13:12:20 -05:00
Neil Fortner
e3cfd6f0df [svn-r16386] Fix various warnings (errors in pgcc) associated with yesterday's dense
attribute object copy commit.

Tested: jam (gcc and pgcc)
2009-01-30 10:46:43 -05:00
Quincey Koziol
2af7e952ed [svn-r16382] Description:
Re-insert some whitespace formatting that was accidentally removed.

Tested on:
	None - just eyeballed.
2009-01-29 16:08:13 -05:00
Neil Fortner
af7ced00f6 [svn-r16380] Purpose: Enable copying of dense attributes
Description:
Attribute object copy routines have been moved from H5Oattr.c to H5Aint.c.
These routines are now shared between compact and densely stored attributes.
New routines written to support the copying of dense attributes.  This patch wasmostly written by Peter Cao.

Tested: jam, smirom (h5committest)
2009-01-29 16:02:07 -05:00
Allen Byrne
f7464a5129 [svn-r16378] Description:
Changed max macro in earray.c to avoid Windows conflict.
    Changed if(test) to assert(test) in H5FDcore.c - H5FD_core_open()

Tested on:
    Windows: XP32, XP64, Vista32, Vista64 
    H5committest.
2009-01-29 15:52:44 -05:00
Neil Fortner
ec61416324 [svn-r16376] Purpose: Fix a bug encountered when copying shared messages
Description: When attempting to copy an object with a message shared in its own
object header, the library attempts to protect the same object header twice.
Previously, it was possible for the object header to be protected with write
access in one or both of these protects, which would be illegal.  The library
should now always protect with read only access in this case.  The conditions
for fixing incorrect datatype versions have been made weaker to support this
change.  The version will only be corrected if the object header the datatype
is in is modified.

Tested: jam, smirom (h5committest)
2009-01-29 15:43:16 -05:00
Quincey Koziol
91c1a6df54 [svn-r16367] Description:
Refactor internal address encode/decode routines slightly, to allow for
more flexible use.

Tested on:
    Mac OS X/32 (amazon)
    FreeBSD/32 (duty)
    (too minor to require h5committest)
2009-01-27 18:09:35 -05:00
Quincey Koziol
05f1e4f778 [svn-r16366] Description:
Add context pointer for extensible array client callbacks.

Tested on:
    Mac OS X/32 (amazon)
    FreeBSD/32 (duty)
    (too minor to require full h5committest)
2009-01-27 17:43:58 -05:00
Quincey Koziol
c7407a8ccb [svn-r16364] Description:
Clean up a few compiler warnings

Tested on:
    Mac OS X/32 (amazon)
    (too minor to require h5committest)
2009-01-27 16:16:55 -05:00
Neil Fortner
bf4789092a [svn-r16360] Purpose: Fix potential error with H5Tset_order
Description: H5Tset_order will now properly reject H5T_ORDER_NONE for most
datatypes.  Previously this could cause major problems as the file could not be
flushed.

Tested: jam, smirom (h5committest)
2009-01-27 10:56:48 -05:00
Quincey Koziol
5cd054dd5c [svn-r16354] Description:
Bring r16353 back from revise_chunks branch:

        Refactor internal layout information, making it easier to add another
type of chunk index.

Tested on:
	FreeBSD/32 6.3 (duty)
	(other platforms tested with original patch)
2009-01-27 09:00:07 -05:00
Neil Fortner
0682bfceb7 [svn-r16347] Purpose: enhancements the H5Tinsert, H5Tpack
Description: H5Tinsert will now detect when a compound type that was previously
not packed becomes packed due to out of offset order insertion of a member.
H5Tinsert will now attempt to keep members sorted by offset order.  This should
improve performance of H5Tinsert in all cases due to the fact that it no longer
needs to check every other member for overlapping, and should improve
performance of H5Tpack and possibly type conversion when compounds are packed
out of order.

Tested: jam, smirom (h5committest)
2009-01-26 14:18:40 -05:00
HDF Tester
2a1a78a0b4 [svn-r16344] Snapshot version 1.9 release 28 2009-01-25 06:22:44 -05:00
Frank Baker
5393933154 [svn-r16340] Description:
Changed 'THG' to 'The HDF Group' in various HDF5 source files,
        most of which are <subdirectory>/COPYING.
    -- Closes Bugzilla entry 1403.
2009-01-22 15:53:59 -05:00
HDF Tester
fdc7b17438 [svn-r16329] Snapshot version 1.9 release 27 2009-01-18 05:04:40 -05:00
Mike McGreevy
ce7219fc8c [svn-r16324] Purpose:
Code Cleanup

Description:

    - Pulled out repetitive cache stats code into its own new macro.

    - Converted HDasserts in cache stats macros to if / HGOTO_ERROR statments
      in order to keep code consistent.

Tested:

    jam, smirom, liberty
2009-01-15 14:16:40 -05:00
Albert Cheng
50ccdbcc7d [svn-r16321] Purpose:
Improvement

Description:
Modified the warning messages from the Version mismatch checking to suggest
the users to try recompiling or checking the shared lib setting.

Platforms tested:
Tested in Jam only since it was just a simple text string changes.
2009-01-14 18:50:17 -05:00
Raymond Lu
ea92781324 [svn-r16316] Added support for OpenVMS pathname for external links.
Tested on jam.  Tested v1.8 on OpenVMS.
2009-01-14 15:41:17 -05:00
Neil Fortner
6564dbcfaa [svn-r16308] Purpose: Fix problem with H5Tpack
Description:
If a compound type was packed except for some extra space at the end, H5Tpack
would not modify the type and the extra space would remain.  Changed
H5T_is_packed to fix this behaviour.

Tested: jam, smirom (h5committest - linew down)
2009-01-14 10:30:51 -05:00
Quincey Koziol
a365f0e6aa [svn-r16306] Description:
Bring r16305 back from revise_chunks branch:

	Add detection of C99 "designated initializers" to configure script and
use new H5_HAVE_C99_DESIGNATED_INITIALIZER macro to conditionally compile
default layout variables in src/H5Pdcpl.c

	Also, minor code cleanups, etc.

Tested on:
	FreeBSD/32 6.3 (duty) in debug mode
	(Other platforms tested on branch)
2009-01-14 08:09:42 -05:00
Mike McGreevy
041e7dbfed [svn-r16290] Purpose:
Adding code to maintain a min_clean_fraction in the cache in serial mode.

Description:

    The metadata cache now has the ability to maintain a min_clean_fraction
    when in serial mode. The default initial cache size has been changed
    from 1MB to 2MB, and the default min_clean_fraction has been set at 30%.

    This check-in includes modifications to H5C.c to support maintaining a
    min_clean_size, including the addition of clean_index_size and 
    dirty_index_size trackers, modifications to the H5C_make_space_in_cache 
    algorithm, as well as associated test code and additional statistics 
    tracking variables.

    Maintaining the min_clean_fraction addresses the possibility of
    experiencing a "metadata blizzard" when the cache gets completely
    full with dirty entries. Upon having to make space, the cache would
    previously need to flush every single entry in the cache before coming
    across a clean entry which could be evicted. This resulted in unnecessary
    flushing of oftentimes hot entries in the cache. Maintaining the
    min_clean_fraction ensures that, when space is needed, clean entries
    are more readily available to evict.

Tested:

    jam, smirom, linew (h5committest)
2009-01-09 14:53:30 -05:00
Neil Fortner
d6da56adb7 [svn-r16281] Purpose: Add functions to allow more flexible traversal of external links.
Description: Added H5Pset/get_elink_cb to allow the user to specify a callback
function to be called whenever an external link is traversed.  Added
H5Pset/get_elink_acc_flags to allow the user to specify the file access flags
to use to open the target file of an external link.  All these properties are set on a LAPL.

Tested: jam, linew, smirom (h5committest)
2009-01-08 13:16:31 -05:00
Quincey Koziol
634c7c5a93 [svn-r16279] Description:
Bring revision 16278 back from revise_chunks branch:

	Update layout information in DCPL to unify all information in one
underlying property and switch to using H5O_layout_t for storing it, which
simplifies things considerably.

	Also, fix many compiler warnings.

Tested on:
	FreeBSD/32 6.3 (duty) in debug mode
	(Original patch tested on many machines)
2009-01-08 12:27:15 -05:00
Pedro Vicente Nunes
75951cfcf8 [svn-r16223] Modified H5Dset_extent so that it fails when called for compact datasets and contiguous with no external storage
new test program: It adds tests for several ranks, use of fill value or not, compression, different fill value allocation times, use of different storage layouts, and external files

tested: windows, linux
2008-12-29 15:36:34 -05:00
HDF Tester
f9f462e720 [svn-r16220] Snapshot version 1.9 release 26 2008-12-28 05:28:04 -05:00
Raymond Lu
1448a3e8bb [svn-r16214] Added HDlseek to the H5FD_core_truncate function in H5FDcore.c to rewind the file pointer
to the beginning of the file.  Otherwise, the file might be re-extended later on Open VMS.
Also updated the return value for the HDlseek to be more appropriate.

Tested 1.8 on Open VMS.
2008-12-22 14:05:43 -05:00
Choonghwan Lee
c302b9b031 [svn-r16209] Purpose:
Bug fix (#1357)

Description:
	Three filters have not assigned correct value to one value-result argument, "buf_size". N-bit, szip, and scale offset filter have had this problem.

	However, I don't think this problem has been making buffer overrun because those filters were informing the caller that the "buf", another value-result argument, is smaller than it actually is. If there was actual buffer overrun, I believe another problem exists although I don't know.

Tested:
	jam, smirom, linew

	Although all test were passed, I'm concerned about valgrind memcheck error. There can be another miscommunication between filter and the caller.
2008-12-19 11:22:10 -05:00
Quincey Koziol
e77303f483 [svn-r16204] Description:
Moved v1 B-tree debugging routines into separate module and thinned
out header files a bit.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        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/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
2008-12-18 08:43:21 -05:00
Raymond Lu
86fb2794d6 [svn-r16202] Added HDlseek in front of the truncate function in H5FD_sec2_truncate for VMS only.
On Open VMS, if the last read or write put the file pointer beyond the current file size
(it happens when an object is deleted), the file can be extended when it's truncated.

Tested v1.8 on VMS.
2008-12-15 16:17:38 -05:00
Mike McGreevy
379b5a7b01 [svn-r16194] Purpose:
Bug Fix

Description:

    Resolved issues with broken sanity checks that were failing when the 'b2'
    debugging package was enabled (v2 b-tree debugging):

        - Fixed outdated assertions that would not compile. They now compile
          and function correctly.

        - Removed too far outdated assertions that would require too much 
          unnecessary refactoring of code in order to satisfy their
          initial purpose.

        - Re-enabled b2 debugging package when "--enable-debug=all" is
          specified on the configure line.

Tested:

    jam, smirom, linew
2008-12-15 12:39:20 -05:00
Quincey Koziol
58e4b0c979 [svn-r16187] Description:
Change a few more "istore" references in comments to "chunk" or "btree".

Tested on:
	None, just comments
2008-12-11 15:06:17 -05:00