summaryrefslogtreecommitdiffstats
path: root/src/H5FDmulti.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r25929] Description:Quincey Koziol2014-12-291-38/+50
| | | | | | | | | | Clean up EOF code within library and add 'mem_type' parameter to 'get_eof' VFD callback, to avoid various ambiguous situations, particularly with the multi VFD. (Supports changes for 'avoid_truncate' feature also) Tested on: MacOSX/64 10.10.1 (amazon) w/serial & parallel h5committest forthcoming
* [svn-r25881] Description:Quincey Koziol2014-12-101-66/+16
| | | | | | | | Minor code/comment cleanups, found while reviewing 'avoid truncate' code. Tested on: MacOSX/64 10.10.1 (amazon) w/serial & parallel (Too minor to require h5committest)
* [svn-r25661] Update the default setting for the memb_addr array when use ↵Mohamad Chaarawi2014-10-031-1/+1
| | | | | | | | passes NULL to equally divide all the address space between all the members. Before there was one chunk of the address space not being used. tested h5committest, and multi vfd make check on jam.
* [svn-r25620] Fix a bug in multi VFD when the memb_addr in H5Pset_fapl_multi ↵Mohamad Chaarawi2014-09-251-1/+1
| | | | | | | | | | is passed as NULL. The library is supposed in that case to equally divide the address space among all members, but there was a bug causing an overflow in the assignment. tested with h5commitest
* [svn-r24030] Description:Quincey Koziol2013-08-191-120/+0
| | | | | | | | Clean up more compiler warnings. Tested on: Mac OSX/64 10.8.4 (amazon) w/gcc, C++ & FORTRAN (too minor to require h5committest)
* [svn-r23987] Merge r23939 from reduce_warning branch to trunkNeil Fortner2013-08-091-2/+0
| | | | | | | | | | | Tested: jam, koala, ostrich (h5committest) Log from r23939: Fix unused variables warnings in trunk Rename static functions in H5Adense.c, H5B2cache.c, H5Bcache.c Switch these functions to use FUNC_ENTER_STATIC* macros Tested: koala
* [svn-r23985] Merge commit 23937 from reduce_warning branchJerome Soumagne2013-08-091-0/+2
| | | | | | Remove unused param (src) and unused var (hl) warnings Tested on koala
* [svn-r23508] Removed some dead code that belonged to the multi dxpl ↵Dana Robinson2013-04-011-28/+0
| | | | | | | | | | | functions that were removed in HDF5 1.8.11. Tested on: jam w/ fortran & C++, tested with check-vfd I did not test on other platforms (h5committest) since there is nothing even remotely platform-specific here.
* [svn-r23366] Removed the H5Pset_dxpl_multi and H5Pget_dxpl_multi functions ↵Dana Robinson2013-03-181-144/+0
| | | | | | | | | | | | | | | from the library. The intended functionality for them was never fully implemented and they are fundamentally broken. The functions were removed from the C and C++ interfaces. They were not exported in the Fortran interface. Tested on: jam(c++/fortran/hl) I tested using check-vfd to ensure the multi VFD still works properly. There is no reason to test this on other machines or on parallel.
* [svn-r23223] Description:Quincey Koziol2013-02-041-4/+4
| | | | | | | | | Revert use of snprintf() for sprintf(), as it is not supported on Windows. (And file a bug, http://jira.hdfgroup.uiuc.edu/browse/HDFFV-8302, for the general problem) Tested: Mac OSX/64 10.8.2 (amazon)
* [svn-r23219] Description:Quincey Koziol2013-02-021-47/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring reviewed changes from Coverity branch back to trunk (QK & JK): r20457: Coverity issue 691: return of H5duo could be negative. Fixed by using STDOUT_FILENO and redesign parse_command_line and main to cleanup file allocations. The output_file var is null when using stdout. In cleanup do not close output_file if NULL. r20510: Initialize ufid = -1 and predicate HDclose call on ufid != -1 r20511: Purpose: Fix coverity issue 1715 Description: Free "file" and nested data on failure in H5FD_core_open. r20512: Initialize ifid = -1 and predicate HDclose call on ifid != -1 r20514: Initialize h5fid = -1 and predicate HDclose call on h5fid != -1 r20516: Added else branch to the if (ret_value < 0) check. r20522: Addressed coverity issues 930-933, 850, 836, 835, 1307. All minor potential buffer overwrite bugs, or coverity errors. Fixed by replacing strcpy and sprintf with strncpy and snprintf. r20523: fixed coverity issues 68, 1120, 1116i r20524: Check H5Z_SZIP->encoder_present < 1 assuming 0 represents absence. r20601: Purpose: Fix coverity issues 1703-1705 Description: Modified the cleanup code in test_free in accum.c to reset allocated buffers to NULL after they are freed, and modified the error cleanup code to check if these buffers are NULL before freeing them. Also fixed some unrelated warnings in accum.c. r20602: Use HDsnprintf and HDstrncat r20603: Purpose: Fix coverity issues 808-809 Description: Modified test_core in vfd.c to check the returns from malloc, and keep track of whether points and check are allocated by setting them to NULL when they are not. Added code to free points and check on error if they are not NULL. Also fixed unrelated warnings in vfd.c. r20604: Use HDstrncpy. r20605: Use HDstrncpy and HDstrncat. r20606: Purpose: Fix coverity issue 807 Description: Modified long_compact in stab.c to keep track of whether objname is allocated by setting it to NULL when it is not. Added code to free objname on error if it is not NULL. r20607: Changed string function calls to use versions that specify the string length to fix coverity issues 832 and 839. Tested on: Mac OSX/64 10.8.2 (amazon) (Too minor to require h5committest)
* [svn-r22707] Description:Quincey Koziol2012-08-221-4/+4
| | | | | | | | | | Bring back some more cleanups from the plist_encode_decode branch, clean up some formatting and compiler errors, and add a few more property comparison routines that we've skipped implementing in the past. Tested on: Mac OSX/64 10.7.4 (amazon) w/debug (Too minor to require h5committest)
* [svn-r22681] Description:Quincey Koziol2012-08-151-156/+251
| | | | | | | | Clean up file driver property handling, along with some misc. warnings. Tested on: Mac OSX/64 10.7.4 (amazon) w/debug, gcc 4.7.1, C++, FORTRAN & threadsafe (h5committest upcoming)
* [svn-r22444] (1) fix for making MEM_GHEAP as MEM_DRAWVailin Choi2012-06-071-1/+2
| | | | | | | (2) fix to extend into the aggregator based on threshold (3) fix for the "flavor" logging problem (4) fix for test failures due to the above fixes (5) bug fix for h5stat when h5stat against a non-existing file
* [svn-r21031] This is a follow-up checkin for r21015 (bug fix for Issue ↵Raymond Lu2011-06-241-10/+10
| | | | | | 2594). According to Quincey's suggestion, I moved the EOAs for individual files from H5FD_multi_fapl_t to H5FD_multi_t struct. It's a more proper place. Tested on jam, koala, and heiwa.
* [svn-r21015] Bug fix for Issue 2598 - In v1.6 library, there was EOA for the ↵Raymond Lu2011-06-221-0/+22
| | | | | | | | | | | | | whole MULTI file saved in the super block. We took it out in v1.8 library because it's meaningless for the MULTI file. v1.8 library saves the EOA for the metadata file, instead. But this caused some backward compatibility problem. v1.8 library couldn't open the file created with v1.6 library. I fixed the problem by checking the EOA value to detect the file created with v1.6 library. Tested on jam, koala, and heiwa.
* [svn-r20588] Description:Quincey Koziol2011-04-211-5/+5
| | | | | | | | | Clean up code a bit, move new "terminate" VFD callback to new position in H5FD_class_t struct. Tested on: Mac OS X/32 10.6.7 (amazon) w/debug & production (h5committest not required on this branch)
* [svn-r20587] Description:Quincey Koziol2011-04-211-0/+1
| | | | | | | | Initial commit of John Biddescomb's VFD & MPI tweaks. Tested on: None (yet) (h5committest not required for this branch)
* [svn-r17365] Description:Quincey Koziol2009-08-151-2/+0
| | | | | | | | | | | | | | | | | | | | Final merge of changes from sblock_mdc branch back to trunk. The superblock is now managed by the metadata cache. 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 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-r16489] Fixed bug #1459 by eliminating the macro long_long and ↵Allen Byrne2009-02-181-3/+3
| | | | | | | | | | | replacing all instances with long long. Tested: h5comittest fedora 10 x64 Vista 32, VS2005, IVF101 XP32, Cygwin
* [svn-r15861] Description:Quincey Koziol2008-10-141-23/+40
| | | | | | | | | | | | | | | | | | | | | | | | Various bug fixes & cleanups with VFDs and file free space changes, along with cleaning up compiler warnings. Enable more VFDs (for 'make check-vfd' testing) for many tests. Tested on: Mac OS X/32 10.5.5 (amazon) in debug mode Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode 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
* [svn-r15800] Description:Quincey Koziol2008-10-071-6/+58
| | | | | | | | | | | | | | | | | | | | | | | Bring file free space branch changes through r15795 into trunk, which includes a fair bit of code cleanup & rearrangement along with a couple of bug fixes also. Tested on: Mac OS X/32 10.5.5 (amazon) in debug mode Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode 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
* [svn-r15628] Description:Quincey Koziol2008-09-161-2/+2
| | | | | | | | | | | | | 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-r15510] Description:Quincey Koziol2008-08-211-23/+27
| | | | | | | | Clean up warnings & formatting Tested on: Mac OS X/32 10.5.4 (amazon) More tests forthcoming
* [svn-r13648] Description:Quincey Koziol2007-04-121-27/+27
| | | | | | | | | | Rename new error handling API routines from H5E<foo>_stack() to H5E<foo>2(). Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty)
* [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-r13248] Description:Quincey Koziol2007-02-061-1/+0
| | | | | | | | | 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)
* [svn-r13139] Fixed the MULTI problem (Bug #731) that corrupted the data. ↵Raymond Lu2007-01-121-42/+121
| | | | | | | The problem came from the EOA for the whole MULTI file. It's taken out because it's meaningless for MULTI file. Instead, each individual file has its EOA.
* [svn-r13035] Fixed a small problem in Line 782 - buf[6] should be set to 0, too.Raymond Lu2006-12-081-0/+1
|
* [svn-r13034] Description:Quincey Koziol2006-12-081-3/+3
| | | | | | | | Take out separate memory type in the file for SOHM objects and create aliases for existing memory types for SOHM use. Tested on: FreeBSD/32 4.11 (sleipnir)
* [svn-r12902] Checkin of Shared Object Header Message work.James Laird2006-11-131-4/+3
| | | | | | | | | | | | 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-r12706] Description:Quincey Koziol2006-10-021-2/+2
| | | | | | | | | Clean up some of the warnings on 64-bit Linux... Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2) Too minor to require h5committest
* [svn-r12440] Purpose:Quincey Koziol2006-06-271-1/+1
| | | | | | | | | | | Code cleanup Description: Trim trailing whitespace in Makefile.am and C/C++ source files to make diffing changes easier. Platforms tested: None necessary, whitespace only change
* [svn-r11712] Purpose:Quincey Koziol2005-11-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.... :-)
* [svn-r11470] Purpose:John Mainzer2005-09-271-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-38/+38
| | | | | | | | | | | | | | | | | | | | 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
* [svn-r11019] Purpose: Add detectionRaymond Lu2005-07-051-21/+0
| | | | | | | | | | | Description: pgcc version 6.0x have optimization (-O, -O2, or -O3) problem. It caused multi driver test to fail. The problem happened in a macro definition. Solution: Detect these versions and add option "-Mx,28,0x8" to the compiler to avoid the problem if optimization is enable. Platforms tested: mir and fuss - simple change.
* [svn-r10913] Purpose: Work Around A Compiler BugRaymond Lu2005-06-131-1/+23
| | | | | | | | | | | Description: PGCC compiler on mir(AMD Opeteron) has a bug for optimization, causing the multi driver test to fail. The compiler handles a macro in this file incorrectly. Solution: Slightly change the definition of this macro to avoid the problem temporarily. Platforms tested: h5committest, optimization and debug on mir.
* [svn-r10628] Purpose:Quincey Koziol2005-04-181-17/+14
| | | | | | | | | | | Code cleanup Description: Clean up various warnings reported by the Windows team. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10181] Purpose:Quincey Koziol2005-03-111-12/+15
| | | | | | | | | | | Code cleanup Description: Make more of the loops over the types of memory use the existing macros. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10144] Purpose:Quincey Koziol2005-03-041-0/+1
| | | | | | | | | | | | | | | | Bug fix Description: The GASS VFL driver header file was bringing in the <string.h> header file, which several other source code modules needed also, but weren't including explicitly themselves. Solution: Add includes for <string.h> to files which actually need them. Platforms tested: FreeBSD 4.11 (sleipnir) w/C++ as CC Configuration not tested by h5committest...
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r9183] Purpose: New featureRaymond Lu2004-09-011-130/+26
| | | | | | | | | | | | Description: Restore 6 old error API functions back to the library to be backward compatible with v1.6. They are H5Epush, H5Eprint, H5Ewalk, H5Eclear, H5Eset_auto, H5Eget_auto. These functions do not have error stack as parameter. Solution: Internally, these functions use default error stack. Platforms tested: h5committest and fuss. Misc. update: RELEASE.txt
* [svn-r9024] Purpose:Quincey Koziol2004-08-051-1/+2
| | | | | | | | | | | | | Bug fix Description: Correct buffer overrun in "multi" VFL driver that was writing past the end of the "driver name" buffer when encoding the driver info block for the file's superblock. Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest
* [svn-r8683] Purpose:Quincey Koziol2004-06-141-4/+3
| | | | | | | | | | | | | Code optimization Description: Use 'size_t' instead of 'hsize_t' to track the number of elements in memory buffers, especially for type conversion. Platforms tested: Solaris 2.7 (arabica) FreeBSD 4.10 (sleipnir) w/parallel Too minor to require h5committest
* [svn-r8134] Purpose:Quincey Koziol2004-01-311-0/+23
| | | | | | | | | | | | | | | | Code cleanup Description: Add destructor to match constructor fr VFLs when they are shut down by the library. Solution: Added H5FD_*_term() routines to "undo" changes made in H5FD_*_init() routines. Platforms tested: IBM p690 (copper) too minor to require h5committest
* [svn-r7967] Purpose:Quincey Koziol2003-12-171-3/+3
| | | | | | | | | | Code cleanup for VS.NET Description: Clean up several issues that VS.NET was having problems with. Platforms tested: Eyeballed against Kent's bug reports.
* [svn-r7507] *** empty log message ***Raymond Lu2003-09-241-0/+104
|
* [svn-r7411] Purpose:Quincey Koziol2003-08-261-2/+1
| | | | | | | | | | | Code cleanup Description: De-linted more modules Platforms tested: FreeBSD 4.8 (sleipnir) w/ & w/o stream enabled too minor to require h5committest
* [svn-r7393] Purpose:Quincey Koziol2003-08-231-89/+92
| | | | | | | | | | | Code cleanup Description: De-linted more code Platforms tested: FreeBSD 4.8 (sleipnir) w/parallel too minor to require h5committest