summaryrefslogtreecommitdiffstats
path: root/src/H5Odtype.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r22287] Description:Quincey Koziol2012-04-161-10/+10
| | | | | | | | Clean up more FUNC_ENTER/FUNC_LEAVE macros and move H5D & H5T code toward the final design (as exemplified by the H5EA & H5FA code). Tested on: Mac OSX/64 10.7.3 (amazon) w/debug & parallel
* [svn-r22171] Description:Quincey Koziol2012-03-281-0/+38
| | | | | | | | | Bring "merge committed datatypes during H5Ocopy" feature from branch to trunk. (Also has some minor bugfixes with it) Tested on: Mac OSX/64 10.7.3 (amazon) w/debug (h5committest coming up)
* [svn-r21919] Description:Quincey Koziol2012-02-091-13/+13
| | | | | | | | Refactor function name macros and simplify the FUNC_ENTER macros, to clear away the cruft and prepare for further cleanups. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
* [svn-r21556] Purpose: Fix bug in H5OcopyNeil Fortner2011-10-131-1/+1
| | | | | | | | | | | | | Description: H5Ocopy could get confused when copying a named datatype containing an attribute which used that named datatype as its datatype. This happened because H5Ocopy would recurse into the attribute's datatype before the object the attribute was in was fully copied (i.e. before the "post-copy" pass). Modified H5Ocopy to avoid recursing before the post-copy step in this case. Required many changes, including to how non-committed shared messages are copied. Tested: jam, koala, heiwa (h5committest); durandal
* [svn-r20513] Description:Quincey Koziol2011-04-151-2/+3
| | | | | | | | | | | | | | | | | | | | | | Correct several problems with compound datatypes that don't have any fields added: - Change assertion to error report when a file is encountered which has this situation. - Added check to attribute creation to avoid creating attributes with a datatype like this (datasets and named datatypes already have the check) Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, w/threadsafe, in production mode Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
* [svn-r19272] Description:Quincey Koziol2010-08-201-1/+1
| | | | | | | | | | | | Close out various resource leaks and usages of uninitialized memory that were flagged by valgrind. [There's still some more valgrind warnings, but it's better now... :-/ ] Also clean up warnings and code formatting. Tested on: Mac OS X/32 10.6.4 (amazon) w/debug & valgrind (h5committest forthcoming)
* [svn-r18595] Description:Quincey Koziol2010-04-201-17/+219
| | | | | | | | Clean up compiler warnings Tested on: Mac OS X/32 10.6.3 (amazon) w/debug (too minor to require h5committest)
* [svn-r17760] Purpose: Fix problem with H5TB APINeil Fortner2009-10-271-24/+5
| | | | | | | | | | | Description: The H5TB API makes some improper assumptions about the order of compound datatype members. Namely, it assumes that members remain in the order in which they were inserted. Unfortunately, this assumption is inherent in the design of the interface. The library has been patched so that this assumption holds in situations relevant to H5TB. Tested: jam, linew, amani (h5committest)
* [svn-r17313] Description:Quincey Koziol2009-08-101-2/+2
| | | | | | | | | | | | | | | | | | | | | Bring back various minor code cleanups from the file free space branch Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode Mac OS X/32 10.5.8 (amazon) in debug mode Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r17281] Description:Quincey Koziol2009-07-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | Further refactoring of the dataset layout information, to separate the storage information from the layout info. Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode Mac OS X/32 10.5.7 (amazon) in debug mode Mac OS X/32 10.5.7 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r17182] In my last round of checkin (r17177), I forgot to clean up some ↵Raymond Lu2009-07-141-5/+0
| | | | | | | | | code. I'm checking in the fix now. Another minor fix - The way that H5Tset_size checks whether the datatype is a string wasn't correct. I changed it to use the macro H5T_IS_STRING. Tested on jam, smirom, and linew.
* [svn-r17177] In H5Odtype.c, the decoding function used to mark the datatype ↵Raymond Lu2009-07-131-4/+12
| | | | | | | | | | as on disk (see bug #1585). I changed it to undefined and let the caller functions decide the location of the datatype. For H5Tdecode, it should mark the datatype as in memory. For other callers like H5Dopen or H5Aopen, they should makr it as on disk. Tested it on jam, smirom, linew.
* [svn-r16594] Purpose: fix bug 1189Neil Fortner2009-03-231-7/+44
| | | | | | | | | | | Description: Some files apparently exist in the wild which have corrupt symbol table messages on the root group. These files can be opened by 1.6 (which uses the cached information in the superblock) but not by 1.8. This patch fixes 1.8 and 1.9 so they can now open these files, and will correct them if necessary. Also fix some potential (rare) problems with array datatype versions. Tested: jam (parallel; h5committest not working on linew or smirom)
* [svn-r16560] Description:Quincey Koziol2009-03-101-6/+6
| | | | | | | | | | Remove another call to H5E_clear_stack() from within the library. Clean up lots of compiler warnings. Tested on: Mac OS X/32 10.5.6 (amazon) (followup on other platforms forthcoming)
* [svn-r16473] Purpose: fix problems related to 'self-referential' attributesNeil Fortner2009-02-121-3/+3
| | | | | | | | | | | | Description: When an attribute was created with a datatype or dataspace that was shared in the same object header that the attribute was in, the attribute could not be deleted. Changes made to ensure that the attribute can be deleted both when the attribute is in the object header and when it is shared in the heap. Object header message decode routines now take an "open_oh" parameter to enable them to avoid opening the same object header twice. Tested: jam, smirom (h5committest)
* [svn-r15628] Description:Quincey Koziol2008-09-161-8/+8
| | | | | | | | | | | | | Remove trailing whitespace from C/C++ source files, with the following script: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Tested on: Mac OS X/32 10.5.5 (amazon) No need for h5committest, just whitespace changes...
* [svn-r15609] Description:Quincey Koziol2008-09-101-12/+9
| | | | | | | | Omnibus compiler warning cleanup & some reformatting also. Tested on: Mac OS X/32 10.5.4 (amazon) Too minor to require h5committest
* [svn-r15458] Purpose: Modify the library to take the proper action when ↵inactive/jpeg_converterNeil Fortner2008-08-111-18/+77
| | | | | | | | | | | | | | files with incorrect datatype versions are encountered. Description: The library now recognizes some problems with datatype versions in H5O_decode_helper(), and, if not performing strict format checks, automatically corrects them. Framework added for other message decode routines to automatically correct file errors. Datatype version information added to h5debug. Tested: kagiso, smirom, linew (h5committest)
* [svn-r14903] Undoing change committed in r14902.Scot Breitenfeld2008-04-301-3/+16
|
* [svn-r14902] Merged fortran_1_8 branch changes r14505:14901 into the trunk. ↵Scot Breitenfeld2008-04-301-16/+3
| | | | New fortran wrappers added.
* [svn-r14738] Description:Quincey Koziol2008-03-131-3/+16
| | | | | | | | | | Bring r14737 back from the 1.8 branch: Fix bug which would incorrectly encode the member offsets for compound datatypes whose size was between 256 & 511 bytes, when the "use the latest format" feature was enabled. Tested on: Mac OS X/32 10.5.2 (amazon) w/debug FreeBSD/32 6.2 (duty) w/production
* [svn-r14139] Description:Quincey Koziol2007-09-101-159/+170
| | | | | | | Minor edits to clean up code. Tested on: FreeBSD/32 6.2 (duty)
* [svn-r14004] Description:Quincey Koziol2007-07-241-75/+26
| | | | | | | | | | | | Fix problem with datatype messages where the version of the format for a datatype message could depend on the "use the latest format" flag from the file after it was initially created. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Mac OS X/32 10.4.10 (amazon)
* [svn-r13821] Peter Cao2007-05-301-0/+2
| | | | | | | | | | | | | | | | | | | | | Fixed a bug at copying shared reg_ref attribute. The ref values of an attribute was not writen in file. The post_copy_file() at H5Oattr.c only updates the value in memory. To fix the problem, we added H5O_shared_post_copy_file(), which delete the attribute in file (with the incorrect value) and create an new attribute with the correct values. I added the following functions: H5Oshared.c:H5O_shared_post_copy_file(H5F_t *f, hid_t dxpl_id, H5O_t *oh, void *mesg); H5Oshared.h: H5O_SHARED_POST_COPY_FILE and modified the following files to include shared_post_copy_file() H5Oattr.c H5Odtype.c H5Ofill.c H5Opline.c H5Osdspace.c
* [svn-r13753] Description:Quincey Koziol2007-05-141-11/+17
| | | | | | | | | | | | | Check in "unique, but sharable" optimization to ISOHM code, which allows object header messages that are only used in one object to remain in the sole user's header, but migrates messages that are used in more than one header into the ISOHM heap. Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13362] Description:Quincey Koziol2007-02-211-1/+74
| | | | | | | | | | | Eliminate unneeded new version in attribute encoding. Add character set & string padding to string datatype debugging output Add character set to attribute name debugging output Tested on: Mac OS X/32 10.4.8 (duty)
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | 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.
* [svn-r13232] Description:Quincey Koziol2007-02-041-84/+12
| | | | | | | | | Remove the "scaffolding" for shared message method invocation and simplify the way shared messages are dealt with in general. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.8 (amazon)
* [svn-r13223] Description:Quincey Koziol2007-01-301-11/+11
| | | | | | | | | | | | Move datatype messages into new shared message method interface Clean up various formatting & compiler warnings Minor optimizations Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13177] Description:Quincey Koziol2007-01-231-16/+16
| | | | | | | | Final tweaks before the big twist to fix shared message method calling. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13176] Description:Quincey Koziol2007-01-231-10/+5
| | | | | | | | Push code further toward shared message method calling refactor. Tested on: FreeBSD/32 6.2 (duty) Too minor to require h5committest
* [svn-r13175] Description:Quincey Koziol2007-01-221-0/+16
| | | | | | | | Checkpoint more progress on refactoring the shared message code. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13155] Description:Quincey Koziol2007-01-191-0/+2
| | | | | | | | | | | | | | Add "set_crt_index" and "get_crt_index" methods for the object header message class. Unify fractal heap definitions for shared messages and attributes, under "object header" fractal heap definitions. Initial code for adding creation order index to object header messages. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13143] Refactoring.James Laird2007-01-161-1/+48
| | | | | | | | | | | | | | Added can_share callback for OH messages. This determines whether the message is allowed to be shared in the heap (committed and immutable datatypes can't be). Fixed a bug in the dense attribute storage that tried to open the shared message heap when it hadn't been created yet. Made the test to extend shared dataspace messages a bit more robust. Refactored the code the searches a shared message list index to be a little more efficient. A few other minor changes. Tested on smirom, kagiso, Windows, and juniper.
* [svn-r13065] Added support for copying shared messages (including turning ↵James Laird2006-12-151-17/+19
| | | | | | | | | | | | unshared messages to shared messages and vice versa). Extended objcopy test to test all "permutations" of shared/unshared and new/old group format. If this proves to take a long time to test, I'll go back and have it run fewer tests when HDF5_TEST_EXPRESS is enabled. Tested on smirom, kagiso, copper, and Windows.
* [svn-r13058] Description:Quincey Koziol2006-12-131-11/+5
| | | | | | | | | | | Clean up some shared message operations and other minor tweaks, in the process of trying to solve the messy way that shared object header messages are implemented in general (not James' work - which is fine :-) Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) AIX/32 5.? (copper)
* [svn-r13057] Added a copy_file callback for datatype messages. This sets ↵James Laird2006-12-121-1/+45
| | | | | | | | | their location in the destination file, fixing a bug in the (not yet checked-in) shared message copying changes. Tested on kagiso, smirom, copper, and Windows.
* [svn-r13028] Description:Quincey Koziol2006-12-061-2/+2
| | | | | | | | | | | | | | | | | Add first pass of "dense" attribute storage to objects. Lots of parts of this are stubbed out, but all the tests are passing and I'll work on the corner cases soon. Eliminated several unused parameters from object header message callback routines. Other, miscellaneous code cleanups, etc. (and probably some things I've forgotten about... :-) Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r13016] Description:Quincey Koziol2006-12-041-6/+4
| | | | | | | | | | | Finish moving object header message routines into their own source code module, along with renaming them to have "H5O_msg_" prefix... Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r13015] Description:Quincey Koziol2006-12-041-2/+2
| | | | | | | | | | | Migrate more object header routines to use the H5O_msg_ prefix and put them into the src/H5Omessage.c code module. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r13012] Description:Quincey Koziol2006-12-031-5/+3
| | | | | | | | | | | | | | Refactor object header code to separate process of creating an object header message from the process of writing to an existing one. Start renaming operations that deal with object header messages to have "H5O_msg_" prefix... Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r13002] Description:Quincey Koziol2006-11-301-18/+15
| | | | | | | | | | | | Fix problem with copying objects when the dataset to copy has an "older" version of the layout message and needs to compute the size of the dataset's storage after the dataspace information is available. Minor random cleanups also... Tested on: FreeBSD/32 4.11 (sleipnir) Too minor/weird to test w/h5committest...
* [svn-r12987] Description:Quincey Koziol2006-11-271-3/+3
| | | | | | | | | Clear up some confusion for the internal H5V_log2_gen() routine, so it always takes a 64-bit value as a parameter. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12902] Checkin of Shared Object Header Message work.James Laird2006-11-131-12/+64
| | | | | | | | | | | | This feature is still in progress; Shared Object Header Messages are not complete as a feature and are not thoroughly tested. There are still "TODO" comments in the code (comments with the word "JAMES" in them, so as not to be confused with other TODO comments). Hopefully this checkin will reduce the liklihood of conflicts as I finish implementing this feature. All current tests pass on juniper, copper (parallel), heping, kagiso, and mir.
* [svn-r12803] Description:Quincey Koziol2006-10-231-1/+1
| | | | | | | | | | | | | | Finish new version of the I/O pipeline message, which is much smaller than the previous version. This version is used with the "use the latest version of the format" flag. Closed several memory leaks/overruns (found with valgrind). Also, lots of compiler & formatting cleanups. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12802] Description:Quincey Koziol2006-10-231-14/+14
| | | | | | | | | | Clean up code in passing... Tested on: Linux/32 2.4 (heping) Linux/64 2.4 (mir) FreeBSD/32 4.11(sleipnir) Mac OS/32 10.4.8 (amazon)
* [svn-r12761] Description:Quincey Koziol2006-10-161-51/+51
| | | | | | | | | | Refactor object header macros, in preparation for updating the format. Tested on: Mac OS/PPC 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) w/thread-safe Linux/32 2.4 (heping) w/C++ & FORTRAN Linux/64 2.4 (mir) w/1.6 compat & build-all
* [svn-r12740] Description:Quincey Koziol2006-10-101-4/+6
| | | | | | | | | | | 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)
* [svn-r12736] Description:Quincey Koziol2006-10-091-73/+66
| | | | | | | | | | | | | | | | | | | Add "use the latest format" support for dataspace object header encode/ decode routines and clean up format a bit for the latest format (new to 1.8.x releases) Remove storing 'perm' parameter for array datatypes in memory and the file, and add test to make certain that if any user applications are attempting to store them, we get some reports back. (Should be unlikely, since the RefMan says that the parameter is not implemented and is unsupported). Carry those changes into the tests, etc. Clean up a bunch more compiler warnings. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-1.6-compat
* [svn-r12712] Description:Quincey Koziol2006-10-031-196/+283
| | | | | | | | | | Finish 'use the latest version of the format' changes to the datatype object header message. Compound and enumerated types will now be encoded more efficiently by packing the field names & member offsets better. Tested on: Linux 2.6/32 (chicago) Linux 2.6/64 (chicago2)