summaryrefslogtreecommitdiffstats
path: root/src/H5I.c
Commit message (Collapse)AuthorAgeFilesLines
* Add maps implementation (based on a patch supplied by MohamadNeil Fortner2017-05-111-4/+4
| | | | Chaarawi). Add h5dsm_map.c example. Other minor fixes/cleanup.
* [svn-r29903] merge from trunk.Mohamad Chaarawi2016-05-091-2/+2
|\
| * [svn-r29081] - merge in the phdf5_metadata_opt/ branch with the collective ↵Mohamad Chaarawi2016-02-101-1/+1
| | | | | | | | | | | | | | | | metadata optimizations. - rename H5AC_dxpl_id to H5AC_ind_read_dxpl_id and update all usage in the library tested on bb-8 with parallel and serial.
| * [svn-r28950] - remove META_FLUSH_COLLECTIVELY property for delayed sanity ↵Mohamad Chaarawi2016-01-211-1/+1
| | | | | | | | | | | | | | | | | | | | checks from metadata dxpls - remove H5AC_ind_dxpl_id and use only H5AC_dxpl_id everywhere instead. - remove flush_me_collectively flag from cache entries - add a collective sanity check (MPI_Barrier) for every HDF5 API routine that could possibly touch the file. This is trigerred when the environment variable H5_COLL_API_SANITY_CHECK is set to a non 0 digit. tested on BB-8 with serial and parallel.
* | [svn-r27777] merge from trunk.Mohamad Chaarawi2015-09-141-84/+60
|\ \ | |/
| * [svn-r27768] Description:Quincey Koziol2015-09-141-84/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Complete revamp of package initialization/shutdown mechanism in the library. Each package now has a single init/term routine. This new way should avoid packages being re-initialized during library shutdown and is also be _much_ more proactive about giving feedback for resource leaks internal to the library. Introduces a new "module" header file for packages in the library (e.g src/H5Fmodule.h) which sets up some necessary package configuration macros for the FUNC_ENTER/LEAVE macros. (The VFL drivers have their own slightly modified version of this header, src/H5FDdrvr_module.h) Also cleaned up a bunch of resources leaks all across the library and tests, along with addressing many warnings, as I encountered them. Tested on: MacOSX/64 10.10.5 (amazon) w/serial & parallel Linux/64 3.10.x (kituo) w/serial & parallel Linux/64 2.6.x (ostrich) w/serial
* | [svn-r27455] merge from trunk.Mohamad Chaarawi2015-08-031-56/+82
|\ \ | |/
| * [svn-r27415] Fix potential error with H5I_clear_type which could occur when ↵Neil Fortner2015-07-201-56/+82
| | | | | | | | | | | | | | | | | | | | | | a callback closed a different ID in the same type. Added a new skiplist routine, H5SL_try_free_safe, which iterates over items, freeing some of them, and which intercepts and defers attempts to remove from the list outside of the main iteration. Changed H5I_clear_type to use this function. Tested: jam, koala, ostrich (h5committest); ummon
* | [svn-r27141] merge from trunk.Mohamad Chaarawi2015-06-031-4/+4
|\ \ | |/
| * [svn-r27133] - Add a new attribute function characterstic for format:Mohamad Chaarawi2015-06-011-2/+2
| | | | | | | | | | | | | | | | * H5_ATTR_FORMAT(X,Y,Z) __attribute__((format(X, Y, Z))) - Rename UNUSED attribute characterstic to H5_ATTR_UNUSED. - Rename NORETURN attribute characterstic to H5_ATTR_NORETURN tested with h5committest.
* | [svn-r27050] merge from trunk.Mohamad Chaarawi2015-05-111-51/+20
|\ \ | |/
| * [svn-r27045] Renamed H5_ASSIGN_OVERFLOW() to H5_CHECKED_ASSIGN() and re-orderedDana Robinson2015-05-101-3/+3
| | | | | | | | | | | | the arguments to be in a more logical order. Tested on: h5committest
| * [svn-r26961] Description:Quincey Koziol2015-04-291-48/+17
| | | | | | | | | | | | | | | | Clean up H5I code, to eliminate duplicated sections of code. Tested on: Mac OSX/64 10.10.3 (amazon) w/serial & parallel (Too minor to require h5committest)
* | [svn-r26724] - merge from trunk & fix conflicts.Mohamad Chaarawi2015-04-031-0/+3
|\ \ | |/ | | | | | | - fix bug in opending an already open named datatype. - fix dynamically loaded VOL plugin support with new changes coming in.
| * [svn-r26246] Corrects a regular expression in the bin/trace Perl script that ↵Dana Robinson2015-02-201-0/+3
| | | | | | | | | | | | | | | | | | | | did not match API calls which return a pointer. Fixes: HDFFV-9141 Tested on: h5committest
* | [svn-r25575] cleanup H5I usage in VOL by removing the use of the aux pointer andMohamad Chaarawi2014-09-051-173/+51
| | | | | | | | | | make a higher level wrapper object around all VOL objects that includes the VOL information.
* | [svn-r25555] - rework the public H5VL wrappers to not use H5VL_t* and use a ↵Mohamad Chaarawi2014-08-261-9/+6
| | | | | | | | | | | | | | plugin hid_t instead - rework the private VL layer to use the class structure directly - some bug fixes
* | [svn-r25544] - add a new version of H5Lis_registered.Mohamad Chaarawi2014-08-221-1/+1
| | | | | | | | - rename external log plugin test in examples.
* | [svn-r25537] VOL framework changes.Mohamad Chaarawi2014-08-191-1/+1
| |
* | [svn-r25521] major rework of the internal setup of VOL plugins to make it moreMohamad Chaarawi2014-08-081-4/+5
| | | | | | | | | | | | | | symmetrical to VFDs and allow new functionality to be implemented later. + some Bug fixes
* | [svn-r25502] merge from trunk.Mohamad Chaarawi2014-07-311-121/+14
|\ \ | |/
| * [svn-r25496] Description:Quincey Koziol2014-07-301-90/+12
| | | | | | | | | | | | | | | | | | Merge 64-bit ID changes from branch to trunk. (Plus a few minor cleanups that aren't on the branch) Tested on: Mac OSX/64 10.9.4 (amazon) w/C++ & FORTRAN (h5committested on branch already for a week)
* | [svn-r25481] - remove unsigned char * from traceMohamad Chaarawi2014-07-241-0/+1
| | | | | | | | | | - add H5Iiterate callback type to trace - other minor tweeks
* | [svn-r25464] more alignment with trunk.Mohamad Chaarawi2014-07-221-6/+3
| |
* | [svn-r24940] merge from trunk.Mohamad Chaarawi2014-04-011-7/+5
|\ \ | |/
| * [svn-r24869] Description:Quincey Koziol2014-03-231-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up more compiler warnings, plus merge a few Coverity bug fixes from the hdf5_1_8_coverity branch back to the trunk: r20877: Purpose: Fix coverity issue 1723 Description: Modified test_generate in hl/test_image to close file "f" before exit, even if an error occurs. r20879: Issue 63: change check of return of H5Tget_nmembers to <=0. No need to go futher if call fails as well as empty. r20881: Coverity #659 in Run 46: I changed the Line 442 where it tries to check whether FLAG_PRINTED is TRUE. But it had just been set to FALSE. I took out the condition check in the print statement. Tested on: Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & Parallel (too minor to require h5committest)
* | [svn-r24316] Add H5Iiterate function. Similar to H5Isearch, but operates on ↵Neil Fortner2013-10-171-21/+90
| | | | | | | | | | | | | | | | library types and does not pass the object corresponding to the id. Tested: ummon (with prototype network plugin)
* | [svn-r24311] change event queue to event stack (just variable names)Mohamad Chaarawi2013-10-171-1/+1
| |
* | [svn-r24301] merge from trunk.Mohamad Chaarawi2013-10-161-460/+443
|\ \ | |/ | | | | resolve conflicts, etc...
| * [svn-r24261] Description:Quincey Koziol2013-10-071-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct H5I use of skip list to acquire the 'next' pointer in the skip list after the ID's 'free' callback has been called, since it occasionally deletes the 'next' node. Also a little bit of code cleanup in other modules. Tested on: FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode FreeBSD/64 8.2 (freedom) w/gcc4.6, 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 (koala) w/Intel compilers, w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.11 (emu) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, w/threadsafe, in production mode Linux/PPC 2.6 (ostrich) w/C++ & FORTRAN, w/threadsafe, in debug mode
| * [svn-r24255] Description:Quincey Koziol2013-10-041-395/+362
| | | | | | | | | | | | | | | | Switch H5I internal data structure from using hash table to skip lists. Tested on: Mac OSX 10.8.4 (amazon) w/C++ & FORTRAN FreeBSD, Linux, etc. forthcoming
| * [svn-r23685] Issue 8380 H5Zunregister caused seg fault. I simplied the ↵Raymond Lu2013-05-081-38/+4
| | | | | | | | | | | | iteration process over datasets, groups, and files as Quincey suggested. I also removed H5I_search that I introduced in last commit but didn't actually used it. Tested on jam and koala - simple change.
| * [svn-r23656] Issue 8380 H5Zunregister caused seg fault: I added some ↵Raymond Lu2013-04-291-4/+38
| | | | | | | | | | | | | | | | | | protection measures: 1. If any opened object uses the filter, let it fail. 2. Flush all opened files to push any cached data to files. Tested with h5committest.
* | [svn-r23473] Update the VOL plugin callbacks with better async I/O support:Mohamad Chaarawi2013-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - change hid_t req in callbacks to void **req - change all callbacks to accept dxpl_ids (except dataset write and read which already do) - update all the private and public VL routines to accept a dxpl_id and event queue id - Add an async class for the VOL plugin with cancel, test, and wait request operations - add the external VOL log plugin test to the examples directory NOTE that async operations are still not provided by the HDF5 API, so all event queue IDs and requests passed to all plugins are NULL for now. Tested on jam.
* | [svn-r22809] - bring in plist encode decode changes from trunkMohamad Chaarawi2012-09-251-8/+18
|\ \ | |/ | | | | | | - remove hardocded error comparing tests for now because those will fail - regenerate Makefile.in s due to conflicting versions of autotools
* | [svn-r22587] update the H5I_register_aux to not take the free routine, as it ↵Mohamad Chaarawi2012-07-171-14/+1
| | | | | | | | is registered already in the class for each type
* | [svn-r22584] merge from trunk and resolve type ID registrationMohamad Chaarawi2012-07-161-112/+133
|\ \ | |/
| * [svn-r22582] Description:Quincey Koziol2012-07-161-98/+120
| | | | | | | | | | | | | | | | | | Refactor ID class registration to be more like how other "class"s in the library are registered, and clean up compiler warnings. Tested on: Mac OSX/64 10.7.4 (amazon) w/debug (Too minor to require h5comittest)
* | [svn-r22554] remove the file_id from the H5F_t struct and add an id_exists ↵Mohamad Chaarawi2012-07-111-5/+1
| | | | | | | | instead
* | [svn-r22553] update the H5Iget_file_id implementation to use the VOLMohamad Chaarawi2012-07-111-41/+54
| |
* | [svn-r22542] update H5I_register_type usage to take a free_aux function callbackMohamad Chaarawi2012-07-101-228/+115
| |
* | [svn-r22532] fix more named datatype issues.Mohamad Chaarawi2012-07-091-26/+18
| | | | | | | | move the dataset ID registration to H5Dint where the term_interface func is located
* | [svn-r22523] - rework how IDs for VOL objects are createdMohamad Chaarawi2012-07-061-33/+251
| | | | | | | | | | - change how the vlose routine is registered with VOL IDs - some bug fixes
* | [svn-r22519] - many bug fixesMohamad Chaarawi2012-07-051-3/+14
| | | | | | | | - still some unresolved issues with named datatypes
* | [svn-r22511] - remove the internal file type and use the file ID created at ↵Mohamad Chaarawi2012-07-031-16/+49
| | | | | | | | | | | | | | the API level for the native implementation - work on fixing the named datatype issue.. still not resolved - branch still not stable and tests do not pass at this point
* | [svn-r22502] implement named datatypes solution in object headersMohamad Chaarawi2012-06-291-1/+4
| | | | | | | | modify datatype open and get_binary callbacks to be disjoint
* | [svn-r22501] change the interface callbacks for the VOL to use objects ↵Mohamad Chaarawi2012-06-281-22/+98
| | | | | | | | | | | | pointers and public VL structure instead of IDs. tests will fail now because of named datatypes.
* | [svn-r22452] - remove nrefs paramMohamad Chaarawi2012-06-111-4/+6
| | | | | | | | | | | | | | | | - create a struct to hold parameters for object locations instead of calling into VOL to lookup and free object: * update the implementation for H5Oopen(_by_name/idx/ref) * H5Rderefence * H5Aopen(_by_name), H5Arename(_by_name) * other routines coming later
* | [svn-r22395] remove the high level ID implementation that wraps the actual ↵Mohamad Chaarawi2012-05-231-155/+35
| | | | | | | | | | | | ID, and store the VOL plugin in an auxilary structure in the ID pointer.
* | [svn-r22274] merge from trunk, resolve conflictsMohamad Chaarawi2012-04-101-43/+104
|\ \ | |/