summaryrefslogtreecommitdiffstats
path: root/src/H5private.h
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r26333] Eliminates gcc warnings due to -Wunsuffixed-float-constants.Dana Robinson2015-03-011-0/+42
| | | | | | | | | | | | - Adds 'F' suffixes for most float constants. - A few constants MUST be of type double. These now receive the long double L suffix and are then cast to double. I do this via a new H5_DOUBLE() macro which was added to H5private.h. Fixes: HDFFV-9148 Tested on: h5committest
* [svn-r26276] Merged r26075-80, 86 from features/autotools_rework branch.Dana Robinson2015-02-231-3/+0
| | | | | | | | | | | | Cleans up time functions in the autotools input files. Removed deprecated gettimeofday() time zone code and configure processing. Also removed some unused time function configure checks and defines. Fixes: HDFFV-9083 and HDFFV-9085 Tested on: 32-bit linux, serial and parallel (jam) OS X (kite) Solaris (emu)
* [svn-r26272] Merge of r26071 from features/autotools_reworkDana Robinson2015-02-221-0/+4
| | | | | | | | | | | | Removes the --with-default-vfd option from configure. This was basically useless and only allowed selecting the stdio VFD. Since this is a demo VFD and not really a production VFD, we decided to retire this option. Fixes: HDFFV-9081 Tested on: h5committest NOTE: platypus cmake fails, but this is not a new error.
* [svn-r26203] increase string size to 128 for MPE function event name.Mohamad Chaarawi2015-02-181-1/+1
|
* [svn-r26180] merge configure fixes for HDFFV-9068,9069,9096,9097,9135 from ↵Mohamad Chaarawi2015-02-161-18/+19
| | | | | | | | | | | | autotools_rework branch: - Remove Infering parallel compilers (C and Fortran) from configure.ac - Remove restriction to build shared with parallel - Cleanup parallel sections in configure.ac - remove large file support checks - MPE fixes. tested with h5committest.
* [svn-r25215] Description:Quincey Koziol2014-05-251-0/+3
| | | | | | | | | | | | | | Bring changes from Coverity branch back to trunk: r20914: Use HDstrncpy and HDstrncat! --gh 20915: Use HDstrncpy and HDstrncat! --gh Tested on: Mac OSX/64 10.9.3 (amazon) w/gcc 4.9.0, C++, FORTRAN & parallel (too minor to require h5committest)
* [svn-r24961] Updates to Win32 thread-local storage cleanup when the ↵Dana Robinson2014-04-041-1/+1
| | | | | | | | | | | thread-safe library is built on Windows. Previously, thread-local storage was not cleaned up, causing resource leaks. Fixes HDFFV-8518, HDFFV-8699 As a part of these changes, the thread-safe + static library options are declared unsupported since the solution relies on DllMain. A solution for the static library is probably doable, but requires much more complicated surgery and has been deferred to HDF5 1.8.14. Tested on: 64-bit Windows 7 using VS 2012 (changes only affect Windows)
* [svn-r24803] Description:Quincey Koziol2014-03-161-19/+0
| | | | | | | | | | | | Rename GCC_DIAG_OFF/ON macros to H5_GCC_DIAG_OFF/ON and move from src/H5private.h to src/H5public.h. Wrap typedef of hsize_t and hssize_t in DIAG_OFF(long-long) macros. Clean up a bunch of "macro '-' is unused" warnings. Tested on: Mac OSX/64 10.9.2 (amazon) w/gcc 4.8.2, C++, FORTRAN, parallel (too minor to require h5committest)
* [svn-r24769] Description:Quincey Koziol2014-03-071-2/+2
| | | | | | | | | Check in Mohamad's changes to support collective I/O on point selections, along with some other minor cleanups. Tested on: Mac OSX/64 10.9.2 (amazon) w/parallel & serial (h5committest forthcoming)
* [svn-r24270] checkin coverity changes from 10/4/2013.Mohamad Chaarawi2013-10-091-0/+3
| | | | tested with h5committest
* [svn-r24111] Description:Quincey Koziol2013-09-061-10/+5
| | | | | | | Restrict GCC diagnostic pragmas to only gcc 4.6+ Tested on: Mac OSX/64 10.8.4 (amazon) w/gcc 4.8
* [svn-r24101] Description:Quincey Koziol2013-09-051-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up warnings, enable new compiler warning flag(s) and bring back changes from Coverity branch: r20813: Remove the dead code as listed for coverity bug #1722. h5committested. r20814: Issue 69: Check return value and throw error if negative return. Also free datatype id on error r20815: Use HDstrncpy. --gh r20816: Replaced one last HDstrcat call with HDstrncat to resolve coverity issue 832. r20817: Use HDstrncpy and HDstrncat. --gh r20818: Purpose: Fix valgrind issues with h5jam Description: Modified h5jam to free strings strdup'd in parse_command_line before exit. Note that they may still not be freed in case of error, due to the widespread use of exit(). r20819: Issue 80: change loop to use int as loop index. r20820: Maintenance: Fixed the bug found by coverity CID 788 There were two problems with this function: 1) it tried to unnecessary free NULL pointer 2) it tried to allocate c_name buffer that is done by H5Pget_class_name Tested on: Mac OSX 10.8.4 (amazon) w/gcc 4.8.1, C++ & FORTRAN (too minor to require h5committest)
* [svn-r23713] Description:Quincey Koziol2013-05-211-0/+3
| | | | | | | | | | Clean up warnings, switch library code to use Standard C/POSIX wrapper macros, remove internal calls to API routines, update checkapi and checkposix scripts. Tested on: Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN Big-Endian Linux/64 (ostrich)
* [svn-r23695] Description:Quincey Koziol2013-05-111-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up warnings in H5Tconv.c (down to _only_ 9000 lines of output now!) Merge changes from Coverity branch back to trunk: r20684: Fix for coverity bug #1721 which was due to the fix for coverity bug #943. r20685: Use HDstrncpy. --gh r20761: Purpose: Fix valgrind issues Description: Free image_data and data as appropriate in test_image. r20762: Purpose: Fix coverity issue 600 Description: Add check for return value of H5O_close in H5Ocopy. Also cleaned up various warnings. r20763: Purpose: Fix valgrind issues with h5stat Description: Modified h5stat to free "iter" before exit, and free "hand" before exit if parse_command_line exits directly. r20764: fixed coverity issues: 69, 327, 614, 684, 685, 696, 697, 1681, 967, 826, 660, 80 r20765: Fixed coverity bug 668 Pulled x * y * z multiply out of malloc operand into a separate n_elements variable to quiet integer overflow warning. No actual integer overflow tests are performed since it's just a test program but I did add a check that n_elements is >= 1. I also changed an error condition from doing its own close and returning -1 to "goto out;" like the rest of the program. r20766: Fixed coverity bug 667 Pulled x * y * z multiply out of malloc operand into a separate n_elements variable to quiet integer overflow warning. No actual integer overflow tests are performed since it's just a test program. Tested on: Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN (h5committest upcoming)
* [svn-r23380] Description:Quincey Koziol2013-03-191-0/+11
| | | | Review & cleanup code.
* [svn-r23347] ported revision 23248:23346 from the trunkRaymond Lu2013-03-131-27/+28
|
* [svn-r23346] First commit for DESY project. It has the basic functionality ↵Raymond Lu2013-03-131-0/+1
| | | | | | of loading dynamically filter libraries and a simple test for it. Tested on koala.
* [svn-r23111] Purpose:Dana Robinson2012-12-191-0/+18
| | | | | | | | | | | | | | | | | | | Fixes for HDF5 1.8.10 p1 HDFFV-7975 Changed the max single I/O operation size on Darwin/Mac OS X. HDFFV-8124 and HDFFV-8158 Fixed a core VFD bug when large blocks of data are read. HDFFV-8246 Added more fields to the VFD read/write error messages. Tested on: 64-bit Windows 7, Visual Studio 2010, CMake 64-bit Mac OS X Snow Leopard (Fred), Fortran, C++ 64-bit BE Linux (Ostrich), Fortran, C++ 32-bit LE Linux (jam), Fortran, C++ (also parallel w/ Fortran)
* [svn-r22722] Update all references from configure.in to configure.acAllen Byrne2012-08-281-2/+2
| | | | Tested: h5committest
* [svn-r22601] Purpose: Fix HDFFV-5853Neil Fortner2012-07-251-1/+2
| | | | | | | | | | | | | | Description: When jumping out from between H5_BEGIN_TAG and H5_END_TAG macros using HGOTO_ERROR or HGOTO_DONE, the previous metadata tag is not reset on the dxpl. This could cause problems when, for example, calling H5Ocopy within an H5Literate callback. Added new HGOTO_ERROR_TAG and HGOTO_DONE_TAG macros which must be used in place of the above between H5_BEGIN_TAG and H5_END_TAG. Tested: jam, koala, ostrich (h5committest), durandal
* [svn-r22450] Update winsock define to match autotools configure checkAllen Byrne2012-06-111-1/+1
|
* [svn-r22287] Description:Quincey Koziol2012-04-161-6/+30
| | | | | | | | 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-r22166] Reduce warnings from unneeded windows incude file.Allen Byrne2012-03-281-0/+2
| | | | | | Reviewed HDF5-68 Tested: windows
* [svn-r21923] Description:Quincey Koziol2012-02-101-0/+24
| | | | | | | | | Add FUNC_ENTER macros for package-private routines and begin process of switching package routines to use them. All H5G routines are currently finished. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
* [svn-r21919] Description:Quincey Koziol2012-02-091-178/+115
| | | | | | | | 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-r21816] Fix for JIRA HDFFV-7780Dana Robinson2011-12-061-1/+5
| | | | | | Updates Windows thread-safe code in H5TS.c to use _beginthread instead of CreateThread. Tested on 64-bit Windows 7 with Visual Studio 2010 using CMake. Both 32- and 64-bit builds were tested.
* [svn-r21366] JIRA HDFFV-2748 replace use of _WIN32 in source. Created new ↵Allen Byrne2011-09-061-585/+585
| | | | | | defines H5_HAVE_WIN32_API and H5_HAVE_VISUAL_STUDIO defines to use. These can be properly set during configurration. Tested: windows and local linux - reviewed internally
* [svn-r21171] Commit HDFFV-5929 winthreads define fixAllen Byrne2011-08-041-2/+8
| | | | | | Change reference of generated executables in src and fortran/src to use $<TARGETFILE:xxx> format. Tested: local linux
* [svn-r20778] I changed the macro definition of DIR_SEPC and DIR_SEPS to ']' ↵Raymond Lu2011-05-091-5/+5
| | | | | | | | for OpenVMS in H5private.h. Strictly speaking, it isn't the directory seperator. But it can simplify the code and make the H5L_build_name function cleaner. Tested on jam because the change only affects VMS.
* [svn-r20536] Description:Quincey Koziol2011-04-171-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up various warnings & code formatting issues. Bring changes from Coverity branch to trunk: r20085: Purpose: Fix coverity issue 793 Description: Modified H5S_hyper_project_simple_higher() to free the entire span list in new_space on failure. r20091: This is a fix for coverity bug #1683. Changed the two printfs to use %lu (unsigned long) for printing "dset_size". r20162: Purpose: Fix coverity issue 785 Description: Modified H5T_enum_nameof() to free "name" on failure if it was allocated. Also clarified some code in H5S_hyper_rebuild_helper(). r20189: Addressed coverity defect 783. H5SL_new_node() in H5SL.c was failing to free space allocated in its first alloc if the second alloc failed. Added a call to H5FL_FREE to address this issue. This is purely to keep coverity happy -- if this code is ever triggered, we have much larger problems. Note that this fix will trigger an unused return value complaint from coverity next week. r20190: Fixed Coverity issues 1561 1565 and 1678 (UNUSED_VALUES) by moving checks of return values to after the function call. r20191: Fixed coverity issues 643 644 and 1678 (CHECKED_RETURN). r20232: Addressed coverity issues 923-925. Replaced calls to sprintf with calls to HDsnprintf. r20233: Fix coverity issue 662. Don't try to sort 0 attributes in H5Aint.c. r20234: Fix coverity issue 664. Check for NULL before dereferencing in H5Gdeprec.c. r20271: Purpose: Fix coverity issue 784 Description: Modified H5_debug_mask() to keep a list of files opened for use as a debugging output stream, and modified H5_term_library to close these files on exit. r20272: addressed coverity issues 838 & 955. Issue was use of strcpy() -- existing code was safe, but modified to use strncpy() to keep coverity happy. r20273: Addresed coverity issues 1388 and 1389. Initialized sel_iter->type to NULL in H5S_select_iter_init. r20275: Purpose: Fix valgrind issue in mf.c Description: Fixed bug (incomplete if statement) in test_mf_fs_alloc_free() so the retrieved node gets freed. 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-r20050] Description:Quincey Koziol2011-02-051-5/+0
| | | | | | | | | | | Bring sec2 and log VFDs back into agreement. Correct several compiler warnings. Also add some additional statistics to the log VFD and promote the parameter for H5Pset_fapl_log from 'unsigned' to 'unsigned long long'. Tested on: Mac OS X/32 10.6.6 (amazon) w/debug & production FreeBSD/32 8.2 (loyalty) w/debug FreeBSD/64 8.2 (freedom) w/debug
* [svn-r19418] On windows, an include bypassed the WIN32_LEAN_AND_MEAN define. ↵Allen Byrne2010-09-171-1/+1
| | | | | | Moved the define up. Moved the h5dif.h to after the h5private include Tested: Windows
* [svn-r19384] Description:Quincey Koziol2010-09-151-6/+2
| | | | | | | | | | Correct an error I convinced Mike to introduce with the phread_once() code, :-( along with another one that wasn't my fault. Also, clean up warnings and restructure code in the thread-safe code a bit. Tested on: Mac OS X/32 10.6.4 (amazon) w/production + thread-safe (not a configuration that h5committest tests)
* [svn-r19367] Purpose:Mike McGreevy2010-09-101-3/+14
| | | | | | | | | | | | | | | | | | | Add windows threads support to HDF5. Description: Added calls to the windows threads library to the H5TS layer, and wrapped most calls to either pthreads or windows threads library with portable H5TS-style defines. Modified tests to use portable function definitions as well. This can be configured via CMake with the HDF5_ENABLE_THREADSAFE option, and should work on windows vista and later operating systems. Tested: h5committest, plus threadsafe with pthreads on jam and amani, and tested on a Windows Vista VM with threadsafe using windows threads.
* [svn-r19297] Description:Quincey Koziol2010-08-251-2/+2
| | | | | | | | | | Whack a few more memory errors exposed by valgrind. Make the debugging dump output a little bit prettier. Tested on: Mac OS X/32 10.6.4 (amazon) w/debug (h5committest forthcoming)
* [svn-r19171] Bug fix: 1917.Albert Cheng2010-08-051-8/+5
| | | | | | | | The previous fix had the Windows code in H5private.h but they should have been in H5win32defs.h which holds all Windows-specific definitions. Moved the fix. Tested: BP (AIX) to confirm the fix is still valid. Windows tests will occur in daily tests tonight.
* [svn-r19167] Bug fix: 1917.Albert Cheng2010-08-031-2/+9
| | | | | | | | | | | | | | | | | | | Description: test/big incorrectly determined not able to write files larger than 2GB and skipped the SEC2 and STDIO driver tests. The reason was because it was using off_t while the SEC2 driver is using lseek64 which expects off64_t type. Solution: Created a new HDoff_t which is set to off_t or off64_t or other appropriate type depending on which of lseek or lseek64 is available. Changed SEC2 file driver and the big test to use this common definition. Tested: In BP (AIX), using --enable and --disable-largefile, for both 32 and 64 bits modes. Did not do h5committest because: 1. the error was exposed in the remote BP machine; 2. the change is trivial. Note that STDIO driver failed when --disable-largefile is used. That is an error in the STDIO driver code that is being fixed.
* [svn-r19010] Purpose:Mike McGreevy2010-06-161-6/+2
| | | | | | | | | | | | | | Clean up code. Description: Reorganize to remove mixed declarations and code (which should satisfy windows compile). Tested: jam, blue print, gandalf Windows 7 w/ VS Express 2008 (on VMware)
* [svn-r19005] Purpose:Mike McGreevy2010-06-151-0/+45
| | | | | | | | | | | | | | | | | | | | | | | Commit metadata tagging framework. Description: This check-in contains a new framework whose goal is to apply a tag value to each new entry in the metadata cache as it is created. This tag value is such that it relates each piece of metadata to the HDF5 object that it belongs to (dataset, group, et cetera). This changeset includes the framework that applies the tags as well as a suite of tests to verify correct tag application, though does not yet make use of the tag values to flush/evict individual objects. Please refer to the "flush/evict individual objects" RFC for further discussion of these changes. Tested: jam, amani, linew (h5committest) liberty, abe, blue print
* [svn-r18965] Windows use of VC_EXTRALEAN no longer did anything. It has been ↵Allen Byrne2010-06-031-1/+5
| | | | | | | | replaced by WIN32_LEAN_AND_MEAN macro. This was the cause of a define conflict causing the use of grp1 and grp2 to be replaced with constants in the h5dumpgentest.c file. This also affected the use of the #include <winsock.h> needed by gethostname. The new include: winsock2.h has been added to h5private.h and either removed or updated in the other files. Tested: Windows
* [svn-r18595] Description:Quincey Koziol2010-04-201-1/+1
| | | | | | | | Clean up compiler warnings Tested on: Mac OS X/32 10.6.3 (amazon) w/debug (too minor to require h5committest)
* [svn-r18516] Bug: Albert Cheng2010-04-051-1/+1
| | | | | | | | | | | | | | | | PGI v10.2 in Red Storm Qual complained about the H5_IS_API macro with the following message when -Mbounds is used: PGC-S-0053-Illegal use of void type The compiler did not like to treat the literal strings as arrays. The -Mbounds option is used when --disable-production is used. Solution: Casted all the literal to (char *). Tested: h5committest passed (linew is not quite completed yet.) Red Storm Qual passed with the fixed H5_IS_API macro though it has other failures later. Will be fixed in another batch.
* [svn-r18492] Bug fix:Albert Cheng2010-04-011-0/+2
| | | | | | | | | | | | | | | | | Testlibinfo.sh failed again. Solution: Removed the const from H5libhdf5_settings definition, again. Revamp the whole setting so that H5lib_settings.c is compiled individually, just like H5Tinit.c. Hope this will take care of the problem once for all. Tested: Jam using --disable-shared with --enable and --disable-embedded-libinfo. Will test this on the AIX platform after commit (cannot run bin/reconfigure in the AIX platform and it is too clumsy to try to ssh files back and forth and incurred "svn merge inconsistency" later too. Pretty confident this fix should work in all other platforms.
* [svn-r18475] Description:Quincey Koziol2010-04-011-3/+0
| | | | | | | | | | | | | | | | | | Fix dependency issue and non-C99 coding goof. 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, 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
* [svn-r18474] Description:Quincey Koziol2010-03-311-2/+3
| | | | | | | | | Switch back to generating a .h file for the library settings. Also, tart it up a bit to avoid multiple inclusions, etc. Tested on: Mac OS X/32 10.6.3 (amazon) w/debug & production FreeBSD/32 6.3 (duty)
* [svn-r18469] bug fix:Albert Cheng2010-03-301-0/+2
| | | | | | | | | | | | | | recent changes to the embedded library generation code does not quite work for the AIX system. The strings command of AIX does not display the embedded library information be default. Solution: Changed the H5libhhdf5_setting[] to be an extern variable. Also removed the const qualifier so that strings can see the variable data. Tested: Blue-print (with embedded-libinfo enabled and disabled). Also tested in Jam.
* [svn-r18445] Purpose: Fix bug 1637Neil Fortner2010-03-241-1/+1
| | | | | | | | | | Description: Modified algorithm for extending a dataset with early allocation so it only deals with the new chunks. Formerly, it would loop over all chunks, checking to see if each existed in cache and on disk, causing major performance issues with large numbers of chunks. Tested: jam, linew, amani (h5committest)
* [svn-r18415] Description:Quincey Koziol2010-03-181-1/+0
| | | | | | | | | | Move the libhdf5.settings information out of src/H5Tinit.c and into a separate header file (src/H5lib_settings.h), which is generated at build time (not configure time) with the src/H5make_libsettings generator program. Tested on: Linux/32 2.6 (jam) Mac OS X/32 10.6.2 (amazon)
* [svn-r18031] Description:Quincey Koziol2009-12-171-8/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring r18030 from merge_metadata_journaling branch to trunk: Bring "brush clearing" changes (whitespace & style issues, mostly) from metadata_journaling branch to the "merging" branch, to converge the trunk and the metadata_journaling branch. Also, some other minor cleanups along the way. 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 (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.6.2 (amazon) in debug mode Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
| * [svn-r18030] Description:Quincey Koziol2009-12-171-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring "brush clearing" changes (whitespace & style issues, mostly) from metadata_journaling branch to the "merging" branch, to converge the trunk and the metadata_journaling 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 (jam) w/PGI compilers, w/default API=1.8.x, 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.6.2 (amazon) in debug mode Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode