Commit Graph

83 Commits

Author SHA1 Message Date
Quincey Koziol
509b8f645d [svn-r13465] Description:
Fix bug in external links when "strong" file close degree is used.

	Make external link callbacks use standard error reporting mechanisms.

	Other minor code cleanups...

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-03-06 10:06:05 -05:00
Quincey Koziol
44f312b183 [svn-r13449] Description:
Add object creation property (H5P[s|g]et_obj_track_times) to disable
storing timestamps on objects, which makes the object's header size smaller.

	Also, added object header status flags to H5O_info_t struct (for
H5Oget_info/H5Oget_info_by_idx) and cleaned up other field names in the
struct as well.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.8 (amazon)
2007-03-03 23:28:09 -05:00
Elena Pourmal
8c176b73d2 [svn-r13433] external_link_self test cannot run on VMS
Commented out for VMS only.

Platforms tested:
	VMS server and kagiso
2007-02-28 16:41:40 -05:00
Quincey Koziol
4d93574a8f [svn-r13360] Description:
Finish H5Aiterate2()

	Add H5Arename2() and mark H5Arename as deprecated.

	Started on H5Oopen_by_idx().

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-02-20 21:24:25 -05:00
Quincey Koziol
56e63bdeea [svn-r13287] Description:
Add H5Aget_info_by_idx & H5Aget_name_by_idx routines, along with
refactoring underlying indices code to handle those sort of queries.

	Simplify the link callback routines a bit.

	Minor other cleanups.

Tested on:
	Mac OS X/32 10.4.8 (amazon)
	FreeBSD/32 6.2 (duty)
2007-02-13 09:50:48 -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
7320ccac2d [svn-r13248] Description:
More progress on creation order for attribbutes - they are now basically
working for "compact" attribute storage.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.8 (amazon)
2007-02-06 15:03:06 -05:00
Quincey Koziol
7fc6a486b9 [svn-r13117] Description:
Clean up some warnings from Windows.

Tested on:
	FreeBSD/32 6.1 (duty)
2007-01-06 22:51:07 -05:00
Quincey Koziol
a867b8f5fd [svn-r13045] Description:
Switch from using H5L_index_t/H5L_INDEX_<foo> to H5_index_t/H5_INDEX_<foo>
in order to accommodate indices on aspects of attributes as well as links.

    Add basic support for deleting attributes in dense storage (needs more
support/tests for shared attributes in dense storage still).

    Misc. cleanups, etc.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-12-11 19:42:19 -05:00
Quincey Koziol
957a5082d1 [svn-r12983] Description:
Merge H5Pget/set_create_tracking / H5Pget/set_create_index routines into
H5Pget/set_creation_order.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-11-27 14:17:07 -05:00
Quincey Koziol
d219ff86a8 [svn-r12977] Description:
Added H5Gget_info[_by_idx] routines and deprecated H5Gget_num_objs routine.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-11-27 13:00:08 -05:00
Quincey Koziol
59208d8a9b [svn-r12976] Description:
Add # of attributes to the object info struct and deprecate
H5Aget_num_attrs().

Tested on:
    FreeBSd/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
2006-11-27 09:51:22 -05:00
Quincey Koziol
e32aacbfed [svn-r12974] Description:
Add H5Oget_info() and H5Oget_info_by_idx() API routines & tests

Tested on:
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    Mac OS X/32 10.4.8 (amazon)
    AIX/32 5.? (copper)
2006-11-27 00:31:54 -05:00
Quincey Koziol
4d08b756b2 [svn-r12956] Description:
Add tests for H5Oopen_by_idx() (in a rare fit of superlative coding I
apparently got the implementation complete correct in my earlier checkin :-)

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-11-21 10:39:16 -05:00
Quincey Koziol
335978f235 [svn-r12952] Description:
Add tests for H5Literate(), in all combinations.

    Sweep up a few minor issues with H5Literate() that the tests exposed.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-11-20 16:01:28 -05:00
Quincey Koziol
98f3bca75e [svn-r12949] Description:
Finish implementation of H5Literate() [still needs real tests]

    Clean up datatype macro warnings a bit more.

    Unify iterator callback macros and put up in public header file, with the
iterator directions.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
2006-11-20 10:23:29 -05:00
Quincey Koziol
1482d3e9cb [svn-r12932] Description:
Basic support for H5Literate() routine.  Still needs to be fleshed out and
refactored to simplify.  Also, needs tests. :-)

Tested on:
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
    Mac OS X/32 10.4.8 (amazon)
2006-11-17 10:48:41 -05:00
Quincey Koziol
fb4f4a22f7 [svn-r12922] Description:
Add support for "delete by index" to "old-style" groups, finishing
implmentation of H5Ldelete_by_idx() routine.

Tested on:
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    Aix/32 5.? (copper)
2006-11-15 23:29:18 -05:00
Quincey Koziol
ab9425d057 [svn-r12921] Description:
Finish adding more tests to "delete by index" for compact/dense groups.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
2006-11-15 22:14:58 -05:00
Quincey Koziol
51580d9be1 [svn-r12919] Description:
More progress toward getting H5Ldelete_by_idx() working - removals on
densely stored links should work now (still needs some more tests).  Still
need to write code for removals on "old-style" groups.

Tested on:
    FreeBSD/32 4.11 (sleipnir)
2006-11-15 17:08:08 -05:00
Quincey Koziol
c35a2ad6b2 [svn-r12910] Description:
More progress toward getting H5Ldelete_by_idx to work fully - can now
delete by index in compact group (but not dense groups or "old-style" groups
yet).  Need to go write a v2 B-tree routine to delete from the B-tree by index
before the dense storage will work properly...

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-11-14 10:42:31 -05:00
Quincey Koziol
f494ab7674 [svn-r12906] Description:
Straighten out some convoluted code when links were being deleted, which
could cause the "delete" callback for user-defined links to not get called when
the group they were in was deleted.

    Had to compromise on the "delete" callback though - only calls the callback
with the ID for the file the link is in, instead of the group, since the group
is being held open upstream in the calling sequence during a group deletion and
this prevents a group and its ID from being created.  (This could possibly be
worked around, but would cause a fair bit of havoc in the code and I'm not
entirely certain it's worth it...)

Tested on:
    Linux/32 2.6 (chicago)
2006-11-13 16:45:35 -05:00
Quincey Koziol
3f25d6c6d1 [svn-r12895] Description:
Add new H5Lget_val_by_idx() routine & tests.

    Also includes most of changes for H5Ldelete_by_idx() routine.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
2006-11-13 10:00:06 -05:00
Quincey Koziol
2355d25955 [svn-r12894] Description:
Add H5Lget_name_by_idx routine & tests

    Move more H5G routines to deprecated API file

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) C++ & FORTRAN
    Linux/64 2.4 (mir) w/build-all & enable_compat1.6
    AIX/32 5.? (copper) w/parallel & FORTRAN
2006-11-12 06:56:10 -05:00
Quincey Koziol
a9af13d987 [svn-r12890] Description:
Finished implementation of H5Lget_info_by_idx for all cases: old vs. new
group formats, compact vs. dense new link storage, increasing vs. decreasing
vs. native iteration order.

    Also, refactor symbol table "foo by index" routines to be more generic
and share more code by using a single B-tree iteration callback which makes
callbacks to a specific "get <foo>" callback.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
2006-11-10 23:15:27 -05:00
Quincey Koziol
665f42f9e0 [svn-r12878] Description:
Flesh out support for looking up link info by index, some cases for using
dense storage are working now.

Tested on:
    Linux/32 2.6 (chicago)
2006-11-07 15:32:44 -05:00
Quincey Koziol
de285fb909 [svn-r12875] Description:
Fix retrieving name for references to root group.

    Also, move 'ref' test earlier in testing, right after 'getname' test

Tested on:
    Linux/64 2.6 (chicago2)
2006-11-07 12:06:42 -05:00
Quincey Koziol
eb36a96a79 [svn-r12872] Description:
Implement basic framework for H5Lget_info_by_idx and get it working for
creation order indices on compact groups.

    Clean up code a bit.
    
    Close resource link in user-defined link traversal.

Tested on:
    Linux/32 2.6 (chicago)
2006-11-06 22:09:03 -05:00
Quincey Koziol
32cd8f3fcf [svn-r12865] Description:
Change name of H5Lunlink to H5Ldelete, per our design meeting last Friday.

Tested on:
    Linux/32 2.6 (chicago)
2006-11-06 12:44:40 -05:00
Quincey Koziol
5adf1ee1ba [svn-r12864] Description:
Changed H5Lget_linkval() to H5Lget_val(), per our design discussion last
Friday afternoon.

Tested on:
    Linux/32 2.6 (chicago)
2006-11-06 12:05:16 -05:00
Quincey Koziol
d60efe3336 [svn-r12860] Description:
Update H5Iget_name() tests to reflect that the name of the object for an
ID can be found in many more situations now.

Tested on:
    FreeBSD/32 4.11 (sleipnir)
2006-11-03 23:35:54 -05:00
Quincey Koziol
19c9657f7c [svn-r12842] Description:
Refactor generic property list initialization code to put property list
specific routines in property list modules, instead of scattered to the four
winds.  Also, introduce property list class initialization objects, to make
adding new property list classes in the library easier.

    Fix daily test failure by using H5Pget_elink_prefix() API routine instead
of looking at the "raw" generic property list information.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/C++ & FORTRAN
    Linux/64 2.4 (mir) w/build-all & 1.6 compat
2006-11-01 23:54:19 -05:00
Quincey Koziol
8b52aae45d [svn-r12835] Description:
Change H5Lget_linkinfo() to H5Lget_info() to better align with coming API
changes.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-10-30 19:45:31 -05:00
Quincey Koziol
5acf9725e0 [svn-r12834] Description:
Uncomment out tests that were accidentally left out.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-10-30 19:16:11 -05:00
Quincey Koziol
bcda3c2dbf [svn-r12833] Description:
Clean up more warnings...

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-10-30 19:13:27 -05:00
James Laird
c19a43d854 [svn-r12831] Changed the API for "unpacking" an external link value to take the size of
the linkval buffer, per Elena and Frank's suggestions while revising
the documentation.  Added error checking using this size, as well as a
couple of tests.

Tested on juniper, kagiso, and sol.
2006-10-30 15:24:19 -05:00
Quincey Koziol
780fefb829 [svn-r12830] Description:
Finish internal work necessary to track creation order in v2 B-tree when
group is in "dense" storage form.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-10-30 15:03:46 -05:00
Quincey Koziol
87411d7b2d [svn-r12827] Description:
Correct typo that was causing tests to fail.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-10-30 10:57:57 -05:00
Quincey Koziol
12edb97078 [svn-r12825] Description:
Rudimentary support for creating creation order index (but not inserting
links in it yet).

Testedon:
    Mac OS X/32 10.4.8 (amazon)
2006-10-30 09:33:14 -05:00
Albert Cheng
e065eee4a8 [svn-r12751] Purpose:
Bug fix (related to 544)

Description:
h5_get_file_size() was coded to return 0 if failed but
file size can be 0.  Changed the failure return value to -1
which is allowed by the returned type of off_t which is a signed
type.
Also changed the checking code of the stat call to just == 0
since that is how it is defined.

Test:
Could test it in heping only.  Both Sol and Copper failed to
compiled due to error in the Direct IO VFD code.
2006-10-11 22:55:06 -05:00
Quincey Koziol
c0c896e724 [svn-r12740] Description:
Update datasets and the layout, attributes and fill-value
object header messages to use the latest version
of the file format flag.

Tested  on:
    FreeBSD 4.11 (sleipnir)
    Linux/64 2.4 (mir)
    Linux/32 2.4 (heping)
2006-10-10 15:36:33 -05:00
James Laird
4d8a0f4c54 [svn-r12719] Configured external links to (by default) use the FAPL of the parent
file, rather than H5P_DEFAULT.

This lets them be used with stdio and directio drivers.

Tested on mir and juniper (check-vfd takes a long time!).
2006-10-04 17:40:06 -05:00
Quincey Koziol
a6f6462541 [svn-r12700] Alert:
File format is not stable, don't keep files produced!

Description:
    First stage of checkins modifying the format of groups to support creation
order.  Implement "dense" storage for links in groups.

    Try to clarify some of the symbols for the H5L API.

    Add the H5Pset_latest_format() flag for FAPLs, to choose to use the newest
file format options (including "dense" link storage in groups)

    Add the H5Pset_track_creation_order() flag for GCPLs, to enable creation
order tracking in groups (although no index on creation order yet).

    Remove --enable-group-revision configure flag, as file format issues are
now handled in a backwardly/forwardly compatible way.

    Clean up lots of compiler warnings and other minor formatting issues.

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/FORTRAN & C++
    Linux/64 2.4 (mir) w/enable-v1.6 compa
    Mac OSX/32 10.4.8 (amazon)
    AIX 5.3 (copper) w/parallel & FORTRAN
2006-10-02 05:24:03 -05:00
Elena Pourmal
298dbe5396 [svn-r12659] This is VMS maintenance check-in.
Some of the tests cannot be run on VMS since they try to open
the same file twice.

Solution:
Bypass the tests according to the H5_CANNOT_OPEN_TWICE variable setting.

Platforms tested:
VMS server and heping.
2006-09-11 18:18:29 -05:00
James Laird
0274a5f3a2 [svn-r12627] Skipped links and fheap tests when stdio file driver is used.
These errors should be investigated more thoroughly later.  The underlying
problem in links.c seems to be that files opened multiple times don't share
the same H5F_shared_t struct.  Perhaps identifying when this is the case
would be helpful?

Tested on mir.
2006-08-24 11:09:23 -05:00
James Laird
9edac8a668 [svn-r12623] Added H5Fget_intent() function to get the "intent" of a file (read/write or
read-only).
Added this to external links, so that external files are opened with the
same intent as the source file.
Added tests.
2006-08-23 19:52:21 -05:00
James Laird
75d22ed839 [svn-r12596] Refactored how external files are opened and closed.
Object header locations (H5O_loc_t's) can now "hold open" a file and
decrement its open object count when they close.  This means that
locations (H5O_loc_t's and H5G_loc_t's) should always be freed.

Added more thorough tests to ensure that external files are closed.
2006-08-18 15:48:54 -05:00
Quincey Koziol
8b9f020cb1 [svn-r12544] Description:
Clean up compiler warnings/failures in test/links.c, especially when
--disable-production flag used with --enable-group-revision

    Modify binary dumping in h5dump to clean up files created [a band-aid
solution to not actually creating the files in the srcdir, but better than
just leaving the files around... :-/ ]

Tested:
    FreeBSD 4.11 (sleipnir) (w/ configure flags above)
    Too minor to require h5committest
2006-08-04 15:44:42 -05:00
James Laird
b5724779d0 [svn-r12533] Standardized the way path prefixes are passed to external links using a
LAPL.  Now there are H5Pget and H5Pset functions for "elink_prefixes".
2006-08-03 17:35:58 -05:00
James Laird
59e9037d38 [svn-r12530] Skipped objcopy and links tests when certain file drivers are used. 2006-08-03 12:58:06 -05:00