Bug Fix
Description:
Regression test for following bug:
The H5Gget_objinfo() function was not setting the 'fileno' field in the
H5G_stat_t struct passed in.
Solution:
Added a "file serial number" to each file currently open in the library
and put that in the 'fileno' field. If a file is opened twice (with
H5Fopen) and the VFL driver detects that it is the same file (i.e. the
two file structures have the same "shared file info" in the library's
memory structures), they will have the same serial number.
This serial number has two drawbacks:
- If a VFL driver doesn't/can't detect that two calls to H5Fopen with
the same file actually _are_ the same file, each will get a
different serial number
- If the same file is closed and re-opened, the serial number will be
different.
It is be possible to fix the second drawback for many VFL drivers, but it
would be a lot of effort and probably isn't worth it until we've got a
good reason to do it. Dunno if we'll ever be able to fix the first
drawback...
Platforms tested:
FreeBSD 4.5 (sleipnir)
VS: ----------------------------------------------------------------------
Bug Fix
Description:
The H5Gget_objinfo() function was not setting the 'fileno' field in the
H5G_stat_t struct passed in.
Solution:
Added a "file serial number" to each file currently open in the library
and put that in the 'fileno' field. If a file is opened twice (with
H5Fopen) and the VFL driver detects that it is the same file (i.e. the
two file structures have the same "shared file info" in the library's
memory structures), they will have the same serial number.
This serial number has two drawbacks:
- If a VFL driver doesn't/can't detect that two calls to H5Fopen with
the same file actually _are_ the same file, each will get a
different serial number
- If the same file is closed and re-opened, the serial number will be
different.
It is be possible to fix the second drawback for many VFL drivers, but it
would be a lot of effort and probably isn't worth it until we've got a
good reason to do it. Dunno if we'll ever be able to fix the first
drawback...
Platforms tested:
FreeBSD 4.5 (sleipnir)
VS: ----------------------------------------------------------------------
Bug Fix
Description:
I wasn't testing if the Fortran compiler could actually do the MPI
compilation tests.
Solution:
Changed the configure script so that it uses Fortran 90 to test the
MPI compilation stuff instead of the MPI C compiler...
Platforms tested:
AIX and Linux
Code removal
Description:
Removed the HDF4 source files from the HDF5 tree. The directories
will remain. Use the "-P" option when doing a cvs checkout or update
to "prune" the empty directories from your personal tree.
Purpose:
Bug Fix
Description:
The new way of detecting LibZ (just specifying the directory where
include/ and lib/ are) wasn't propagated down to the Fortran
directory.
Solution:
Added that code...
Platforms tested:
AIX and Linux
Bug Fix
Description:
Regression test for following bug:
When reading a contiguous hyperslab that spanned the entire dataset and
was larger that the type conversion buffer, the hyperslab routines need
to fill the type conversion buffer and then return to the I/O routines.
When the I/O routines resume the hyperslab operation, it was possible to
have a combination of coordinates which caused the hyperslab iterator
to incorrectly advance in the file, causing some data to be re-read or
re-written.
Platforms tested:
Linux (eirene)
Bug Fix
Description:
When reading a contiguous hyperslab that spanned the entire dataset and
was larger that the type conversion buffer, the hyperslab routines need
to fill the type conversion buffer and then return to the I/O routines.
When the I/O routines resume the hyperslab operation, it was possible to
have a combination of coordinates which caused the hyperslab iterator
to incorrectly advance in the file, causing some data to be re-read or
re-written.
Solution:
Corrected the H5S_hyper_iter_next routine to correctly handle contiguous
hyperslabs that span the entire dataset dimensions.
Platforms tested:
Linux (eirene)
Purpose:
To clarify where INSTALL files are located.
Description:
The README.txt refers to the INSTALL files as though they
were in the top HDF5 directory. They are not there so this
was confusing to users. Added a line saying they were located in
the release_docs/ directory.
Code Motion
Description:
Removal of HDF4 from the configure/Makefiles. This is a precursor to
the actual physical removal of the HDF4 tools from the HDF5 tree.
Platforms tested:
Arabica, Dangermouse
Bug fix
Description:
Old config assume compiler is the SGI compiler if it is not gcc.
It would apply all SGI cc options to the $CFLAGS. This would cause
problem if a non-cc non-gcc compiler is used.
Solution:
Verify the compiler is indeed the SGI compiler before applying all those
cc specific options to the $CFLAGS.
Platforms tested:
modi4, both parallel serial, gcc or cc, -64 or n32.
Purpose:
1. fix a bug on all_withf90.zip
2. update windows zlib library to 1.14 version
Description:
1. somehow the workspace and project files were not totally updated on all_withf90.zip
update it now.
2. Update windows zlib library to the 1.14 version in responding to the security problem of zlib.
This updating will not affect other platforms.
Solution:
Platforms tested:
windows 2000
Purpose:
Bug fix
Description:
I borrowed function HDpackFstring from the HDF4 Library and
left name unchanged. It causes linking problems for Fortran users
that use both HDF4 and HDF5 Libraries in their applications.
Solution:
Changed the name to be HD5packFstring
Platforms tested:
Solaris 2.7
Purpose:
added a new function H5D_update_chunck that will update the chunk information; for the moment this function
just has debugging of the b-tree
Platforms tested:
w2000 , eirene
Purpose:
code clean up
Description:
just some clean up of the functions H5D_set_extend and H5S_set_extend before the big change
(changing chunk info in the b-tree struct of the dataset)
Platforms tested:
w2000, eirene
Purpose:
Bugfix
Description:
Internally created socket wasn't closed
Solution:
In my last commit I only fixed the case for sending data over a socket.
There was also a resource leak for the receiving side where an internally
created socket wasn't closed. Same wrong logical condition, same fix.
Platforms tested:
Linux, SGI
Purpose:
Bugfix
Description:
If the socket, used for data streaming by the Stream driver, was created
by the driver itself, it did not close it after the file had been closed.
A resource leak occured.
Solution:
This bug was just introduced due to a logical condition.
Fixing the condition solved the problem.
Platforms tested:
Linux, SGI
Feature/bug fix
Description:
The 'snapshot diff' command is run in all cases, even after the initial
"snapshot diff" and hosts are polled to run the test. It would not cause
any harm except wasting time repeating diff'ing. Also, the path is
quite right to invoke snapshot by merely "bin/snapshot diff" since it
has not "cd" to the right directory yet.
Solution:
Added a new option of "-nodiff" to skip the special diff request.
Then make "runtest" to call itself again with it to prevent
any further unnecessary diff'ing.
Platforms tested:
eirene
New feature
Description:
"snapshot diff" will just run the diff and exit 0 is no significant
differences found between current and previous versions.
Runtest will try a "snapshot diff" and will skip test if no significant
differences are found.
Platforms tested:
eirene
Bug-ish Fix
Description:
"make check" would barf in this directory since there's not a
"check:" target.
Solution:
Added a ".PHONY" entry so that "make checks" and the like won't barf
when they enter the pablo directory.
Platforms tested:
Linux
dpss removal
Description:
Removed dpss module since we no longer have that in the source. Also
fixed where the H5Tinit.c file was being looked for and how it was
compiled...
Platforms tested:
Linux
Bug Fix
Description:
Needed more -I flags to catch some of the include files.
Solution:
Added them. Cleaned up the way include files and -D defines were
specified in the Makefile.
Platforms tested:
Linux
Bug Fixes
Description:
Fixed some bugs. The CPPFLAGS wasn't being included into the
Makefile. Also, there's a sed script which needed to be pointed to
with the $(top_srcdir) macro.
Solution:
Added @CPPFLAGS@ to the CPPFLAGS line and put $(top_srcdir)/ before
the sed script file's name.
Platforms tested:
Linux
Bug Fix
Description:
Didn't need to test that the Pablo library had a function in it only
that it was there.
Solution:
Removed that check. Just checked if we can actually find the physical
library and include files where the user tells us they're hiding.
Platforms tested:
Linux
Bug Fix
Description:
Fixed wrong test for the HAVE_PABLO flag. Was testing if it was not a
null string when I should have been testing if it was equal to "yes".
Solution:
Changed test so that it checks if it's equal to "yes" instead of
non-null...
Platforms tested:
Linux
New Feature Addition
Description:
Revamped Makefile for Pablo software so that it is an option in the
global configure script that the user can specify with the
"--with-pablo[=DIR]" command.
Bug Fix
Description:
Some -I paths weren't included in the h5cc script. That would cause
the compiler to fail if it was trying to find gass header files or
the like.
Solution:
Added the CPPFLAGS macro to the h5cc.in file so that it'll be there
when it's generated. This will also include some -D options which we
compiled the library with, like the LFS flags on Linux.
Also changed the configure* files so that it will "chmod" the created
h5cc file to 755 (executable) since that wasn't happening all the
time...
Platforms tested:
Linux
Purpose:
Removed file
Description:
all_lang.zip was intended to be a copy of all.zip including other
language APIs, such as Fortran and C++. Yet, we later decided to
add these APIs to all.zip directly and disable them by default; the
user will enable his/her choice. Thus, this file is no longer needed.
Platforms tested:
None
Purpose:
rearrange projects, erase more warnings, faster compiling
fix a small bug in fortran building
Description:
Previously every testing project includes h5test.c to deal with
test initialization and clean up etc. So h5test.c is compiled dozens of
times for each HDF5 building. It slows down the compiling time and
shows more warnings(dozens of times warnings that h5test.c generates).
Solution:
Make library called libtest.lib and libtestD.lib and connect this library
with testing projects. In this way compiling time is shorter and warnings are reduced.
Platforms tested:
windows 2000
Note: HDF5 fortran debug dll test failed most tests. From the observation,
I suspect it is due to visual fortran compiler. Since debug dll passed all
in VS compiler.
New feature
Description:
Replacing the hardcoding of default version for snapshot test
to a file, bin/snapshot_version. This way, runtest and snapshot
can be version neutral. Makes maintenance easier.
Platforms tested:
eirene.
Purpose:
Code cleanup
Description:
DataType::convert: changed the 'nelmts' parameter from size_t to
hsize_t according to hdf5 library change.
Platforms tested:
SunOS 5.7 (arabica)
Linux 6.2 (eirene)
Purpose:
Small bug fixing
Description:
Replaced NULL by 0 for initializing or passing null "string".
The problem showed up on platinum.
Platforms tested:
SunOS 5.7 (arabica)
Linux 6.2 (eirene)
IA-32 Linux Cluster (platinum)
Purpose:
Adding new member function
Description:
Added PropList::copyProp according to the new api H5Pcopy_prop
in the C library. I'm still working on adding more tests so
test for this will be added as well.
Platforms tested:
SunOS 5.7 (arabica)
Linux 6.2 (eirene)
FreeBSD 4.4 (sleipnir)
Bug fix
Description:
check-install was on the same make line with install. They
got run in parallel.
Run check-install as a separate make action after make install is completed.
Platforms tested:
Eirene
Feature
Description:
The output of multiple tests of one host used to all go to the same
logfile. It is harder to find the beginning of each test.
Solution:
Added hour and minute (HHMM) into the logfile name. Different
tests should go to different files now. If a second test starts
within a minute of the previous test, their output will be all
in the same file. In the case, there are probably not that much
output to worry.
Platforms tested:
eirene
Bug Fix
Description:
There was a problem with having a lot of groups nested together. We
could only handle 1024 characters at most, but, in a parallel program
especially, it could occur that there were lots and lots of groups
and would be more than 1024.
Solution:
I made the "objname" part of the obj_t structure a pointer instead of
a fixed size. Added code to allocate/deallocate the memory we need
for it. Had to fix how the "prefix" was being handled in the h5dump
program. It was also set to only 1024 characters in length. I made it
dynamic.
Added a test case...Go me!
Platforms tested:
Linux, Solaris