Commit Graph

21 Commits

Author SHA1 Message Date
Elena Pourmal
cd8dfb4650 [svn-r13386] Problem:
Example incorrectly assumed that string attribute had index 2. 
	As a result H5Aread failed.

Solution:
	Interate through all attributes and find the string, after that read it.

Platforms tested:
	kagiso, copper
2007-02-25 11:46:36 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Quincey Koziol
a1708eb023 [svn-r11712] Purpose:
New feature

Description:
    Check in baseline for compact group revisions, which radically revises the
source code for managing groups and object headers.

WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!
WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!

    This initiates the "unstable" phase of the 1.7.x branch, leading up
to the 1.8.0 release.  Please test this code, but do _NOT_ keep files created
with it - the format will change again before the release and you will not
be able to read your old files!!!

WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!
WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!


Solution:
    There's too many changes to really describe them all, but some of them
include:
    - Stop abusing the H5G_entry_t structure and split it into two separate
        structures for non-symbol table node use within the library: H5O_loc_t
        for object locations in a file and H5G_name_t to store the path to
        an opened object.  H5G_entry_t is now only used for storing symbol
        table entries on disk.

    - Retire H5G_namei() in favor of a more general mechanism for traversing
        group paths and issuing callbacks on objects located.  This gets us out
        of the business of hacking H5G_namei() for new features, generally.

    - Revised H5O* routines to take a H5O_loc_t instead of H5G_entry_t

    - Lots more...

Platforms tested:
    h5committested and maybe another dozen configurations.... :-)
2005-11-14 21:55:39 -05:00
John Mainzer
c100b0bf26 [svn-r11470] Purpose:
Repair synchronization bug in the metadata cache in PHDF5

Also repair numerous other bugs that surfaced in testing the
bug fix.


Description:

While operations modifying metadata must be collective, we allow
independant reads.  This allows metadata caches on different processes
to adjust to different sizes, and to place the entries on their dirty
lists in different orders.  Since only process 0 actually writes
metadata to disk (all other processes thought they did, but the writes
were discarded on the theory that they had to be collective), this made
it possible for another process to modify metadata, flush it, and then
read it back in in its original form (pre-modification) form.  The
possibilities for file corruption should be obvious.


Solution:

Make the policy that only process 0 can write to file explicit, and
visible to the metadata caches.  Thus only process 0 may flush dirty
entries -- all other caches must retain dirty entries until they are
informed by process 0 that the entries are clean.

Synchronization is handled by counting the bytes of dirty cache entries
created, and then synching up between the caches whenever the sum
exceeds an (eventually user specified) limit.  Dirty metadata creation
is consistent across all processes because all operations modifying
metadata must be collective.

This change uncovered may bugs which are repaired in this checkin.
It also required modification of H5HL and H5O to allocate file space
on insertion rather than on flush from cache.


Platforms tested:

H5committest, heping(parallel & serial)

Misc. update:
2005-09-27 00:20:11 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

foreach f (*.[ch] *.cpp)
    sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
end


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Quincey Koziol
427ff7da28 [svn-r9727] Purpose:
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)

Description:
    Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation.  So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.

    I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
    FreeBSD 4.10 (sleipnir) w/threadsafe
    FreeBSD 4.10 (sleipnir) w/backward compatibility
    Solaris 2.7 (arabica) w/"purify options"
    Solaris 2.8 (sol) w/FORTRAN & C++
    AIX 5.x (copper) w/parallel & FORTRAN
    IRIX64 6.5 (modi4) w/FORTRAN
    Linux 2.4 (heping) w/FORTRAN & C++


Misc. update:
2004-12-29 09:26:20 -05:00
Elena Pourmal
4408830c77 [svn-r8171] Purpose: Maintenance
Description: Copyright notice was missing from the examples files

Solution: Added copyright notice

Platforms tested: eirene

Misc. update:
2004-02-10 10:42:55 -05:00
Elena Pourmal
e8ed850fa8 [svn-r3959]
Purpose:
    Bug fix
Description:
    All examples used "FILE"  string in the #define preprocessor
    directive. That caused error on Windows platforms since
    FILE is a structure returned by fopen calls.
Solution:
    Changed "FILE" to "H5FILE_NAME"
Platforms tested:
    Linux (eirene)
2001-06-05 13:00:37 -05:00
Bill Wendling
88b51be743 [svn-r3771] Purpose:
Update
Description:
    Changed

            #include <hdf5_file.h>

    to

            #include "hdf5_file.h"

    so that gcc can find our dependencies files instead of all of the
    include files (we don't care about system header files).
Platforms tested:
    Linux
2001-04-03 13:33:07 -05:00
Bill Wendling
5f41cdba4d [svn-r2883] Purpose:
Removed warnings about unused parameters.
Solution:
	``Used'' the parameters by assigning them to themselves.
Platforms tested:
	Linux
2000-11-13 16:06:27 -05:00
Elena Pourmal
acc3ac0da8 [svn-r1990]
Problem: Example did not define string datatype correctly for one of
         the attributes. H5Tset_strpad call was missing.

This fix closes bug #323.
2000-02-24 17:09:01 -05:00
Quincey Koziol
acc0841fe5 [svn-r1738] Took out the "UNUSED" macros from the parameter lists, they were confusing the
HP compiler.
1999-10-08 19:34:04 -05:00
Quincey Koziol
72cf03cdbd [svn-r1694] Fixed various compiler warnings 1999-09-29 19:01:55 -05:00
Quincey Koziol
a92c1a7f2c [svn-r1597] Extended space for string read in. 1999-08-25 15:31:12 -05:00
Robb Matzke
bb36032d5a [svn-r900] Changes since 19981106
----------------------

./tools/h5ls.c
	The chunk dimensions and total size is printed for chunked datasets.

./examples/h5_attribute.c
./examples/h5_select.c
./test/chunk.c
./test/iopipe.c
./test/ragged.c
./src/H5.c
./src/H5private.h
./src/H5public.h
	Removed extra carriage-return characters inserted by a broken
	OS :-)

	Reformatted strange-looking comments.

	Removed C++ comments.

	Wrapped long lines.

./examples/h5_attribute.c
./examples/h5_select.c
	Removed inclusion of private headers.

	Changed `uint32' (originally `uint') to `unsigned' because
	`int32' is not exported as part of the API.

./src/H5Fmpio.h
	Removed includes for <sys/types.h> and <sys/stat.h> since
	they're already included by H5private.h.  All system include
	files should be included in H5private.h so we can wrap them
	with appropriate feature macros.

./tools/h5import.c
./tools/h5repart.c
	Included header files like all other programs in that
	directory.

./tools/h5tools.c
	Better type checking for `hsize_t' and `hssize_t'.
1998-11-11 11:33:33 -05:00
Patrick Lu
e29ca0f166 [svn-r893] changed a uint to a uint32 and included H5private.h in the file. 1998-11-10 13:13:23 -05:00
Frank Baker
929051eae4 [svn-r702] Spelling corrections in comments. No changes to code. 1998-09-16 08:57:56 -05:00
Elena Pourmal
f4567c67fb [svn-r647] Source code was reformatted according to the hdf5 programming standards. 1998-09-01 11:19:23 -05:00
Elena Pourmal
94a9576ee7 [svn-r645] ./examples/h5_attribute.c
./examples/h5_select.c

                         Cosmetic changes to the source format

./examples/h5_chunk_read.c
./examples/h5_read.c

                         Third argument in the H5select_hyperslab
                         function had wrong datatype. Fixed.
1998-09-01 10:07:02 -05:00
Quincey Koziol
4aa79bb211 [svn-r641] Changed function names for beta release. 1998-08-31 22:35:23 -05:00
Elena Pourmal
65dea75ab8 [svn-r639] Two new examples h5_select.c and h5_attribute.c were added to the directory.
Makefile.in was modified to reflect those changes.

Tested on Sun Sparc ( baldric) and DEC Alpha (gondolin)
1998-08-31 16:36:28 -05:00