Commit Graph

3450 Commits

Author SHA1 Message Date
Quincey Koziol
6930f2e32d [svn-r13945] Description:
Modify semantics for constant messages slightly, to allow them to be
deleted, but not modified.  This works around the issue where "old" style
groups are being created with the symbol table message marked constant in
the 1.6 (and prior) branch, but the 1.8 branch needs to remove the symbol table
message when the group has been changed to the "new" style (upon insertion
of a link that the "old" style can't handle).

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-05 15:01:42 -05:00
Quincey Koziol
b37dc18282 [svn-r13944] Description:
Fix problem with VL-datatype fill values when shrinking dataset's dimensions

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-05 10:45:45 -05:00
Quincey Koziol
5c420a9180 [svn-r13943] Description:
Allow H5Dset_extent() to reduce the size of dimensions that aren't unlimited

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-05 10:44:30 -05:00
Quincey Koziol
18d75c9985 [svn-r13942] Description:
Minor code & comment cleanups

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-05 10:43:22 -05:00
Quincey Koziol
1aecbad47f [svn-r13935] Description:
Another minor code cleanup to chunked storage "init by extent" routine.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-03 12:48:26 -05:00
Quincey Koziol
5164007d6d [svn-r13933] Description:
Finish cleaning up "initialize by extent" routine (used when shrinking a
dataset's dimensions) before addressing VL-datatype fill value bug.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-03 12:16:32 -05:00
Quincey Koziol
d7a3b8efcb [svn-r13932] Description:
Move H5Dextend() to the deprecated routine list.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-07-03 08:59:09 -05:00
Mike McGreevy
1d7e8f9dee [svn-r13928] Purpose: 1) Moving H5_CXX_HAVE_OFFSETOF macro to src/H5pubconf.h file.
2) Removing configuration of c++/src/H5cxx_pubconf.h file.

Reasoning: the additional pubconf file caused compilation complications, this is cleaner.

Tested:  kagiso, smirom
2007-06-29 15:52:56 -05:00
Quincey Koziol
1091bb7029 [svn-r13927] Description:
Clean up the chunked storage "initialize by extent" routine, in preparation
for fixing another VL-datatype fill value bug.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
2007-06-28 22:14:30 -05:00
Quincey Koziol
cad9846d77 [svn-r13926] Description:
Add small interface to "wrap" a static buffer (usually on the stack), but
still allow for buffers larger than the static buffer to be allocated.  This
can eliminate _many_ short-lived buffer allocations in situations where the
buffer is a predictable size (or at least a "very likely" size).

    Also, some minor code cleanups, particularly in the SOHM caching code.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
2007-06-28 22:12:45 -05:00
Mike McGreevy
58467956ba [svn-r13925] Purpose: intermediate checkin for offsetof fix for PGI compiler.
Description: added new configuration to generate a pubconf file
             in the c++/src directory, H5cxx_pubconf.h. When C++
             compiler recognizes 'offsetof', the macro 
             H5_CXX_HAVE_OFFSETOF is defined in the new
             pubconf file.

tested: kagiso, smirom
2007-06-28 15:36:08 -05:00
Quincey Koziol
cc6c41f0f0 [svn-r13919] Description:
Clean up more redundant code for reading SOHM messages.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-26 13:42:28 -05:00
Quincey Koziol
1d7d79bbb7 [svn-r13918] Description:
Refactor fill value buffer code into one location, for better long-term
maintenance.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-26 12:46:35 -05:00
Quincey Koziol
4a9a1c90f3 [svn-r13917] Description:
Code & warning cleanups

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-26 12:44:39 -05:00
Scott Wegner
21134e48e1 [svn-r13916] Purpose: Fix MinGW inconsistency
Description:
Windows does not accept the buffer size parameter of setvbuf to be less than 2.  Previously, we had our fix split between two files, H5private.h and the Windows H5pubconf.h.  This was a problem for MinGW, because it generates its own H5private.h.  This moves the fix out of H5pubconf.h and into H5private.h.

This shouldn't affect other platforms.

Tested:
MinGW on WinXP
2007-06-26 11:23:59 -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
Elena Pourmal
fc42567dbe [svn-r13913] Maintenance after beta2 release: used bin/h5vers script to change version number to 1.8.0-beta2poat1 2007-06-25 17:42:04 -05:00
Elena Pourmal
3854a37d83 [svn-r13909] Mainetnance before createing beta2 tar ball
Changed version number to 1.8.0-beta2
2007-06-25 17:11:24 -05:00
Elena Pourmal
2bdd81b3a2 [svn-r13893] Maintenance: Bump up version to beta2pre2 after creating a tar ball for remote testing 2007-06-20 11:58:55 -05:00
Elena Pourmal
08ce1e920d [svn-r13892] Maintenance: Changed library version to beta2pre1 in preparation for remote testing
for the HDF5 1.8.0-beta2 release
Platforms tested: kagiso (small change done by bin/h5vers script)
2007-06-20 11:07:48 -05:00
Raymond Lu
6e0eea31fe [svn-r13885] Modify the comment from the checkin last round.
No test is needed.
2007-06-19 15:18:05 -05:00
Raymond Lu
6017d0c70f [svn-r13884] The second step of optimization for compound data for the Chicago
company.  The I/O is optimized when the source and destination 
members are a subset of each other one way or another, and
the order is the same, and no conversion is needed.  For example:
    struct source {            struct destination {
        TYPE1 A;      -->          TYPE1 A;
        TYPE2 B;      -->          TYPE2 B;
        TYPE3 C;      -->          TYPE3 C;
    };                             TYPE4 D;
                                   TYPE5 E;
                               };
    or
    struct destination {       struct source {
        TYPE1 A;      -->          TYPE1 A;
        TYPE2 B;      -->          TYPE2 B;
        TYPE3 C;      -->          TYPE3 C;
    };                             TYPE4 D;
                                   TYPE5 E;
                                };
The optimization is simply moving data from the source to the 
appropriate places in the buffer and bypass the reading of 
the background data and data conversion.

Tested on smirom, liberty, sol, and copper.
2007-06-19 15:05:24 -05:00
Quincey Koziol
32d09759bd [svn-r13883] Description:
Fixed bugs w/VL-datatype fill values for chunked dataset storage.

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    FreeBSD/32 6.2 (duty)
    FreeBSD/64 6.2 (liberty)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-19 12:35:24 -05:00
Quincey Koziol
41cddd1258 [svn-r13878] Description:
Improve efficiency of writing VL-datatype fill values.

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-19 10:21:13 -05:00
Scott Wegner
5e7acfed72 [svn-r13873] Purpose: Code cleanup
Description:
Changed a macro in H5FDwindows.c from IO_BUF_SIZE to a more specific WINDOWS_MAX_BUF, and moved it to our H5pubconf.h, where users can customize it to their own preference.  

This value is needed because of a bug in the Windows _write function, it is unsafe to write buffers larger than 2GB-1 bytes in one write.

Tested:
VS2005 on WinXP.
2007-06-18 13:19:56 -05:00
Scott Wegner
4d9397a101 [svn-r13872] WinXP x64 does not define the error code EWOULDBLOCK, but instead uses its own WSAEWOULDBLOCK. Although the stream vfd isn't supported on Windows, this was requested by a user via bug #890. This won't affect any other platforms, but should help, should we ever decide to support stream vfd on Windows.
Tested:
kagiso, linew, smirom (via h5committest)
NOT tested on Windows, as it is unsupported.
2007-06-18 12:11:56 -05:00
Quincey Koziol
40160d4d74 [svn-r13870] Description:
Fix writing variable-length datatype fill values for contiguous dataset
storage

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-15 12:52:25 -05:00
Scott Wegner
b2cf486a02 [svn-r13866] Updated the open command to add the _O_BINARY flag, which Windows needs for reading and seeking.
Tested:
VS.NET and VS2005 on WinXP 32-bit and x64
2007-06-14 13:50:54 -05:00
Mike McGreevy
9238d327a3 [svn-r13865] Purpose: Adding a new macro, H5_HAVE_OFFSETOF.
Description: When the compiler has the __offsetof__ extension, the
             H5_HAVE_OFFSETOF macro will be defined. When the compiler
             does not have the extension, the macro will remain undefined.

Tested: kagiso
2007-06-14 09:18:46 -05:00
Scott Wegner
61952803b3 [svn-r13862] Although still not completely ready, this fixes many problems in the new Windows file driver related to writing large buffers (4GB+). sec2 is still set as the default driver on Windows.
Tested:
.NET on WinXP and 2005 on WinXP x64
2007-06-13 15:59:38 -05:00
MuQun Yang
765da09bad [svn-r13856] H5FDwindows.h is included in the hdf5.h but we didn't put it into Makefile.am un
der /src. So when gmake check-install is run for HDF5 examples, it will fail. Th
e fix is to include a macro #ifdef H5_HAVE_WINDOW around #include H5FDwindows.h 
so that H5FDwindows.h will only be included on windows, not on other platforms.

We've fixed with the same way for other source code that includes H5FDwindows.h.

This has been tested with h5committest. However, it takes a few hours to test all tests and except kagiso. Tests on linew and smirom cannot finish. It takes forever for the fheap test. 

And for parallel test at kagiso, ph5diff test seems to be hanged. I think all of our changes will only affect windows. So in order not to block other developers to check in their code, we just go ahead to check our changes. 

Kent Yang
2007-06-12 16:20:13 -05:00
Scott Wegner
3045853b76 [svn-r13852] Added includes in various places to make it possible to set windows as the default vfd. Although sec2 is still default on Windows, it should now be possible to switch by simply changing H5pubconf.h .
Tested:
.NET 2003 on WinXP
2007-06-11 17:27:07 -05:00
Quincey Koziol
d3a0386d36 [svn-r13850] Description:
Hook "default VFD" configure macros into library.

	Also, make "default VFD" default to sec2 instead of nothing.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Mac OS X/32 10.4.9 (amazon)
2007-06-11 13:51:20 -05:00
Mike McGreevy
b442ea5e78 [svn-r13849] Purpose: adding a --with-default-vfd= flag to configuration.
Description:   this flag will define the macro H5_DEFAULT_VFD in src/pubconf.h
               and set it to be either H5FD_SEC2 or H5FD_STDIO, depending on the
               value set with the configuration flag (either sec2 or stdio).

Tested:        kagiso, smirom, linew
2007-06-11 08:35:43 -05:00
Mike McGreevy
9d5336acb2 [svn-r13846] Purpose: To remove changes from version #13839 (regarding DEFAULT_VFD).
Description: Changes made during this checkin need to be greatly
             modified, so I'm removing them now rather than leaving them
             in and fixing them later.
2007-06-08 08:12:13 -05:00
Quincey Koziol
15dbc76104 [svn-r13842] Description:
Fix compact dataset storage to initialize VL datatype fill values
correctly.

	Also, fix bug in global heap code when the fix action on a global
heap is to delete an object in a heap with no free space.

Tested on:
	Mac OS X/32 10.4.9 (amazon)
	FreeBSD/32 6.2 (duty)
2007-06-07 22:06:56 -05:00
Quincey Koziol
ccea4bb7b5 [svn-r13841] Description:
Add a little more information to the debugging routine, for VL datatypes.

    Minor code cleanups

Tested on:
    Mac OS X/32 10.4.9 (duty)
    Too minor to require h5committest
2007-06-07 22:04:42 -05:00
Mike McGreevy
58c565aee7 [svn-r13839] Purpose: creation of a DEFAULT_VFD macro in the test/Makefile.
Description:   a new configure flag has been created that will now set a macro
               in the test/Makefile. The flag is with-default-vfd=. When set to
               a virtual file driver (e.g. "--with-default-vfd=sec2"), the macro
               DEFAULT_VFD will hold this value.

Tested:        kagiso, smirom, linew
2007-06-07 16:42:40 -05:00
Quincey Koziol
c80b774013 [svn-r13836] Description:
Minor code cleanups

Tested on:
	Mac OS X/32 10.4.9 (amazon)
2007-06-05 12:51:06 -05:00
Raymond Lu
1280f90f81 [svn-r13829] Some systems (only SGI Altix ProPack 4 discovered so far) doesn't return correct
file size from MPI_File_get_size.  Bypass this problem by replacing it with
stat.  Add an option --disable-mpi-size in configure to indicate this function
doesn't work properly.  Add a test in testpar/t_mpi.c, too.  If it returns wrong
file size, print out a warning.

Tested on kagiso (parallel) because already tested the same change to v1.6 on 
several platforms (kagiso, cobalt, copper, and sol).
2007-06-02 13:19:36 -05:00
Quincey Koziol
2aa1084117 [svn-r13827] Description:
Close another memory leak for VL fill values, and clean up some
temporary data structures on error.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.9 (amazon)
2007-05-31 21:49:13 -05:00
Quincey Koziol
5279ef2f48 [svn-r13825] Description:
Incremental step forward in fixing problems with fill values that have 
a variable-length daattype.  This set of changes fixes problems with the copying
the property list values.

tested Tn:
	Mac OS X/32  10.4.9 (amazon)
2007-05-31 15:33:19 -05:00
Quincey Koziol
401856703b [svn-r13823] Description:
Minor code cleanup to reduce initialization overhead.

Tested on:
        Mac OS X/32 10.4.9 (amazon)
2007-05-31 12:55:35 -05:00
Quincey Koziol
40ced14dbb [svn-r13822] Description:
Undef the "post copy file" macro for "new style" fill values before
defining it again.

Tested on:
	FreeBSD/32 6.2 (duty) w/gcc 4.2
2007-05-31 04:27:54 -05:00
Peter Cao
461b896779 [svn-r13821]
Fixed a bug at copying shared reg_ref attribute. The ref values of an attribute
was not writen in file. The post_copy_file() at H5Oattr.c only updates the value
in memory. 

To fix the problem, we added H5O_shared_post_copy_file(), which delete the attribute
in file (with the incorrect value) and create an new attribute with the correct values.


I added the following functions:
H5Oshared.c:H5O_shared_post_copy_file(H5F_t *f, hid_t dxpl_id, H5O_t *oh, void *mesg); 
H5Oshared.h: H5O_SHARED_POST_COPY_FILE

and modified the following files to include shared_post_copy_file()
H5Oattr.c
H5Odtype.c
H5Ofill.c
H5Opline.c
H5Osdspace.c
2007-05-30 16:35:57 -05:00
Quincey Koziol
0c12241059 [svn-r13816] Description:
Fix a few typos and a small memory leak.

Tested on:
	FreeBSD/32 6.2 (duty)
	Linux/64 2.6 (chicago2)
2007-05-29 15:30:41 -05:00
Quincey Koziol
b73e0ae8e7 [svn-r13815] Description:
Regenerate configuration files after latest checkin
2007-05-29 15:06:49 -05:00
Quincey Koziol
bdcbada3f2 [svn-r13814] Description:
Change back to clearing memory buffers by default, but give users option
to disable this, for performance reasons (--disable-clear-file-buffers).

    Also, add configure option (--enable-using-memchecker) to conveniently
control making the library "play nice" with memory checking tools like valgrind
and purify.

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    FreeBSD/32 6.2 (duty)
    Linux/32 2.6 (kagiso)
2007-05-29 15:02:34 -05:00
Quincey Koziol
7b0fa3950e [svn-r13811] Description:
Update information printed when the file module's debugging is enabled
and file memory is leaked.

Tested on:
    Linux/32 2.6 (chicago)
2007-05-29 13:57:55 -05:00
Quincey Koziol
fa133cfb95 [svn-r13808] Description:
Fix possible file corruption when using "new" format object headers and the
size of chunk #0 for an object header transitions between needing 1->2->4->8-
byte encoding for the size and there are "clean" messages in the object header
already.  (Usually triggered by flushing the file while adding attributes to
an object)

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-05-24 13:36:53 -05:00