I've also updated our Windows documentation file to include 64-bit instructions. The process is fairly tedious right now, but we hope to make it more straight-forward when we depreciate 6.0 and re-work our project files.
Tested:
32-bit WinXP: VS6, VS.NET, and VS 2005
64-bit WinXP: VS.NET and VS 2005
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
Also added a Windows-specific macro, WINDOWS_USE_STDIO, which users can define if they'd like the Windows VFD to use the buffered low-level I/O functions. This is instead of splitting our Windows driver into two separate drivers. By default, this macro is undefined.
Tested:
VS6 on WinXP
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
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)
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
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)
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
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
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).
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)
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)
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
1) Back out last check in (forget to include the memory leak fix in compare_datasets())
2) Break the infinite loop when the ref_object points to itself at compare_data()
The test scripts did not take in account that the binary has been installed
somewhere other than the original prefix. Added a provision to allow
explicit definition of $prefix to work.
Tested:
kagiso.
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)
Minor tunings to output verbose messages:
1)when there is not a filter request do not print a message saying the filter was not apllied when the dataset was too small
2) avoid printing the message that has a list of objects to modify when there is none
Tested:linux
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)
Fix error which attempted to allocate space for attribute that has a
'null' dataspace.
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)
Optimize a special case when the source members are a subset of
destination, 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;
};
The optimization is simply moving data to the appropriate
places in the buffer. This optimization work is for the Chicago company.
Tested on sol, copper, smirom, liberty.
Added a header message showing the purpose and explanation that the test is
for inoformation and always exits 0.
Also added a summary at the end.
Some other cosmetic changes (moved couple function code up, added some more
printf, fflush statements.)
Tested platform:
kagiso.
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)