failures. Row back the offset and length sizes to 4 (instead of
sizeof(size_t)) for now to pass all tests. Will fix it later.
(Also changed the default create template in H5F.c).
not assign the decoded value back to n.
Solution: Removed temporary variable _n (don't see why it is needed.)
Use the variable n directly.
Platform tested: IRIX64 -64
----------------------
./src/H5H.c
Changed a temporary buffer from 20 bytes to 52 bytes.
./test/tfile.c
Default sizes for file addresses and sizes are the same as
sizeof(size_t) on the machine that creates the file.
The default file addr and size sizes for new files are the
same as sizeof(size_t) on the machine that creates the
file. They used to always be 4.
./src/H5Pprivate.h
./src/H5Psimp.c
Fixed `start' and `nelmts' arguments to be `size_t'.
----------------------
./src/H5C.c
./src/H5Cprivate.h
./src/H5D.c
./src/H5Dpublic.h
Added H5Dget_create_parms(), trying to stay one step ahead of
Elena ;-)
----------------------
./MANIFEST
Added H5Fmpio.c. One way to check that you've properly
included new files is to run `./bin/release none', then unpack
the resulting tar file somewhere and try to compile it. The
tar file will be ./releases/hdf-5.0.0a.tar.
./config/freebsd2.2.1
./config/linux
Added `-ansi'
./acconfig.h
Added definitions for PHDF5 and HAVE_PARALLEL.
./configure.in
Added minimal support for parallel build. Kim and Albert will
have to flesh this out or I can do it if they're more specific
about what they need.
./config/commence.in
Added default value for $(RUNTEST)
./config/conclude.in
`make test' uses value of $(RUNTEST) to run test cases.
./src/Makefile.in
Added PARALLEL_SRC for conditional compilation of H5Fmpio.c
./src/H5D.c
./src/H5Dpublic.h
Added H5Dget_type() for Elena
NOTE: These changes require that configure be rerun. If you're using
GNU make it will happen automatically, otherwise do it by
hand.
----------------------
./MANIFEST
./html/study.html [NEW]
./html/study_1000x1000.gif [NEW]
./html/study_250x250.gif [NEW]
./html/study_499x499.gif [NEW]
./html/study_5000x1000.gif [NEW]
./html/study_500x500.gif [NEW]
./html/study_p1.gif [NEW]
./html/study_p1.obj [NEW]
The conclusions from a study of the HDF5 chunking
layout. Shows overhead and disk seeking.
----------------------
./INSTALL
Added instructions for which C flags to set for debugging.
./src/H5C.c
./src/H5Cpublic.h
H5Cset_chunk() takes const pointer.
./src/H5D.c
./src/H5Dprivate.h
./src/H5Dpublic.h
Added H5Dextend() to extend the dimensions of a dataset.
./src/H5Osdspace.c
./src/H5P.c
./src/H5Pprivate.h
./src/H5Ppublic.h
./test/cmpd_dset.c
./test/dsets.c
./test/th5p.c
Added the optional `maxdims' argument to H5Pcreate_simple()
and defined constant H5P_UNLIMITED which can appear in the
maxdims. Added `const' to arguments.
Implemented H5Pcopy()
Removed the unused file argument from H5P_modify.
Added H5P_extend().
Removed the `flags' field from simple data types and we
determine if the `max' or `perm' arrays are valid by looking
at the pointer. Cleaned up the H5O_sdspace_debug output.
./src/H5T.c
Fixed a printf format.
./MANIFEST
./test/Makefile.in
./test/extend.c [NEW]
Added a test for multi-dimensional unlimited dimensions.
----------------------
./INSTALL
./Makefile.dist
./Makefile.in
./config/conclude.in
Some stupid make's don't know what PHONY means. I added
changed config to _config in the default makefile and added
_test to the other makefiles.
./src/H5Psim.c
A `file_offset' argument got changed to `int' accidently that
causes tests to fail on 64-bit machines. I changed it back to
size_t.
./src/H5T.c
Changed a couple printf formats.
----------------------
./RELEASE
Added Library functions that I missed the first time.
./html/Datasets.html
Added an example for Elena's question about how to read a
single member of a compound data type so it becomes an array
of that member in memory.
./src/H5Pprivate.h
Fixed the prototype for H5P_get_hyperslab() to match the
definition.
./src/H5Psimp.c
Oops, added the kludge back in for the offset argument, which
is still an `intn' instead of a `size_t'.
./src/H5.c
./src/H5public.h
./src/H5F.c
./src/H5T.c
./src/H5Tpublic.h
Changed H5init() to H5open() and added an H5close() to fit our
create/open/close paradigm. The H5open() happens
automatically on the first call to the HDF5 library. The
H5close() happens automatically on exit() (unless the app
turns off that feature). H5close() closes all datasets and
files and releases all resources used by the library.
./test/dsets.c
Added calls to H5open() and H5close() to test them.
./test/dtypes.c
Removed call to H5init() since we no longer need it there.
./src/H5Fstdio.c
Changed the PABLO_MASK to the right value. Thanks Kim.
Problem:
Step 8 failed because H5Pcreate_simple expects size_t dimension
array but the code used an int array. (In IRIX64 -64 mode, size_t
is a 64bit unsigned long but ints are only 32 bits long.) casting
it to size_t* just avoided warning message but did not change the
data type.
Solution:
Throw in a kludge by using a temporary dimension array of size_t.
Can't change the type of h_size since it is also used for the hyperslab
routine which expects an int dimension array. The Hyperslab routine
will be changed. Put in a patch for now.
----------------------
./INSTALL
./INSTALL_MAINT
./README
Updated installation instructions for hdf-5.0.0a.
./RELEASE
Updated release notes. Needs more work.
./bin/release
The tarballs include the name of the root directory like
hdf-5.0.0a so it doesn't have to be explicitly created when
the files are extracted.
----------------------
./config/freebds2.2.1
./config/irix64
./config/linux
Added -DH5T_DEBUG to the debugging flags. Also changed `true'
to `:' for the Irix64 ranlib program. This turns on printing
of data type conversion statistics when the program exits.
./html/Datatypes.html
Fixed documentation for data conversion functions and updated
examples.
./src/H5D.c
The I/O pipeline updates data type conversion statistics.
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
Cleaned up data type conversion registration interface.
----------------------
./MANIFEST
Added new files.
./bin/Makefile.dist [NEW]
This file becomes the default top-level Makefile which invokes
configure with no arguments and then re-runs make. It's for
those people that don't read the INSTALL file.
./bin/release [NEW]
Build HDF release tarballs. Arguments are a list of tarball
types and are: tar, compress, gzip, or bzip2. The default is
gzip. If the only argument is `all' then all types of tarballs
are created. The results are put in the `releases' directory.
Make sure you keep MANIFEST up to date. This program requires
perl-5.003 or better.
./src/H5AC.c
Fixed a printf format.
----------------------
./src/H5P.c
Removed H5Pcreate()
./src/H5Psimp.c
Copy int[] return value from H5P_get_hyperslab() to size_t[]
argument to pass to other hyperslab functions.
./test/dsets.c
Added a call to H5Eprint() to help track down Alberts O2k bug.
----------------------
./MANIFEST
Added new config files.
./src/H5private.h
Changed FUNC_ENTER() so it calls H5Eclear() for all API
functions but not for any private functions. It also prints
the names of all API functions on file 55 (just for the
prototype) so we can get a list of API functions called with
the Bourne shell commands like:
./testhdf5 55>api_list or
./testhdf5 55>&1 1>/dev/null 2>&1 | less
Otherwise the names are silently discarded.
./src/H5.c
./src/H5C.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5M.c
./src/H5P.c
./src/H5T.c
Removed `H5ECLEAR' from lots of places in the source code.
./src/H5E.c
./src/H5Eprivate.h
Recursion is a problem here, so to disable a call to
H5Eclear() from FUNC_ENTER just define a local variable like
this before you call FUNC_ENTER:
const H5E_clearable_g = FALSE;
Unfortunately this results in a warning: declaration of
`H5E_clearable_g' shadows global declaration. Good thing it's
only used in two places.
Changed interface to the H5P..hyperslab functions to 'int' instead of 'size_t'.
Cleaned up lots of warnings on IRIX 6.2 platform. Minor other tweaks to get
to a mostly clean build on the SGI. It still whines about 'long long' being
non-standard and some "pointless comparison of unsigned with 0" but those
aren't big problems.
----------------------
./config/conclude.in
The maintainer-clean target removes Emacs backup files,
mirroring backup and contrib files, core files, and profile
output files in addition to what it used to remove.
./src/H5D.c
Fixed a buffer allocation bug in the output pipeline.
./src/H5Gnode.c
Fixed a comparison against size_t
./test/Makefile.in
Added the other temporary h5 files to the `MOSTLYCLEAN' var.
./test/cmpd_dset.c
Added four tests for partial I/O. Don't you just love it when
something works on the first try!
----------------------
./src/H5D.c
./src/H5Dpublic.c
Added H5Dget_space().
./src/H5Gstab.c
./src/H5H.c
Fixed a comparison with size_t against <0.
./src/H5P.c
./src/H5Pprivate.h
./src/H5Ppublic.h
Changed `intn' to `int' for public function args and
returns. H5Pget_hyperslab() returns the dimensionality.
./test/testhdf5.h
Clears error stack more frequently.
./src/H5Psimp.c
./test/cmpd_dset.c
Impelementing data space conversion.
Problem: Some *.h5 files are left behind after tests.
Solution: Added the MOSTLYCLEAN line for those few .h5 to be removed
if "make clean" is called. Did not use "*.h5" because of concern that
it may blow away legitimate .h5 files. Though it is possible to put
legitimate .h5 in a subdirectory, it is better to play it safe this
way.
----------------------
./Makefile.in
./config/commence.in
With GNU make you can now use `-j' and `-l' options and things
get built correctly. I can do a `make -j -l6 test' from a
clean hdf5 source tree (after configure) in 45 seconds (8 to
build dependencies, 26 to compile everything, and 11 to run
the tests).
./src/H5Gnode.c
Removed a comment that no longer applies.
./src/H5P.c
./src/H5Pprivate.h
./src/H5Ppublic.h
Changed H5Pselect_hyperslab() to H5Pset_hyperslab() and added
H5Pget_hyperslab() and H5P_get_hyperslab().
Replaced a couple short memset() calls with a for loop.
Removed `if (foo!=NULL)' from around H5MM_xfree() calls.
Clear hslab_def when the hyperslab disappears.
./src/H5Tpublic.h
Removed trailing enum comma.
to the HDF4 SDwritedata routine: start, count & stride. The start indicates
the base location of the hyperslab, count indicates the number of elements in
the hyperslab and stride indicates the packing of the hyperslab. The hyperslab
is assumed to be the same rank as the dataspace it is located within. The
hyperslab is stored for future use, no I/O occurs in this routine.