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
Feature
Description:
Added the check-install target to verify if installed software is
working. Currently only run "make check" in examples.
Platforms tested:
eirene
fetures
Description:
The example code used to just run parallel I/O test in the current
directory which is most likely where the program is compiled.
In general, this directory is most likely not a parallel file system.
Therefore, the example code often fails.
Solution:
Add an option "-f <prefix>" for specifying the correct test files
pathname prefix. The program now requires an explicite file prefix
either via the "-f" option or the environment variable $HDF5_PARAPREFIX.
(With the proper setup of $HDF5_PARAPREFIX, the example code can run
automatically in situtaions such as batch job or gmake check.)
Also added feature to cleaup up the test files created.
Of course, an added option "-c" to turn OFF the cleanup action.
Platforms tested:
eirene, modi4, dangermouse (all parallel modes).
modi4 (serial) just to verify it can compile.
Oops
Description:
I added files for testing the group comments dumping feature, but
didn't actually add it to the testh5dump.sh script.
Solution:
Added it.
Platforms tested:
Linux
DLL accommodation
Description:
In the inline constructor below:
DSetCreatPropList() : PropList( H5P_DATASET_CREATE) {}
H5P_DATASET_CREATE causes the famous "unresolved symbol" error
when building the Release version of dsets_cpp with DLL.
H5P_DATASET_CREATE uses H5P_CLS_DATASET_CREATE_g, which is
imported from hdf5dll. The inline constructor used in dsets.cpp
causes the use of H5P_CLS_DATASET_CREATE_g, which is then
considered undefined because dsets_cppdll is not using hdf5dll.
This only occurs in the Release version because the Debug build
disables inline.
Solution:
Made the affected constructor not inlined, i.e., its implementation
went in the cpp file.
Note that this problem does not occur in 1.4 branch because
H5P_DATASET_CREATE was defined differently, i.e., did not involve
external storage.
Platforms tested:
SunOS 5.7 (arabica)
Linux 6.2 (eirene)
Windows 2000