Commit Graph

104 Commits

Author SHA1 Message Date
Vailin Choi
7f718e9ea2 There is performance issue when closing an object. The slow down is due to the search of
the "tag_list" to find out the "corked" status of an object.
The fix:
(1)  Add a counter "num_objs_corked" in the cache structure to track the number
of "corked" objects.
(2) Skip the search of "tag_list" if the counter is zero i.e. no "corked" objects.
2019-02-04 22:30:48 -06:00
Dana Robinson
18e6ec82d0 Squash merge of MDC logging changes. 2018-12-20 20:41:42 -08:00
Binh-Minh Ribler
ec31438afd Fixed HDFFV-10404
Description:
    Applied the typo fixes from user's report.
    The previous pull request couldn't be merged because it was too old,
    and it was too complicated for me to resolve conflicts.
Platform tested:
    Linux/64 (jelly) - very minor
2018-07-13 13:40:22 -05:00
Quincey Koziol
4a17aff408 Add API context interface and use it throughout the library. 2018-03-15 16:54:30 -05:00
Quincey Koziol
744b6b282f Better segregate clean & dirty LRU lists so that they are only defined when
the H5C_MAINTAIN_CLEAN_AND_DIRTY_LRU_LISTS macro is defined.
2017-09-30 09:50:58 -05:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
mainzer
afd8f64c29 Omnibus checkin for several relatively minor modifications:
1) Added code test/page_buffer.c to verify that page buffering is
   disabled in parallel builds.

2) Added code to test/cache_image.c to verify correct interaction
   between evict on close and cache image -- in particular management
   of a file containing a cache image containing dirty metadata that
   has been opened R/O.  Also fix for the bug exposed.

3) Added code to testpar/t_cache_image.c to verify expected procedure
   for reading cache images, and also supporting stats collection code
   needed for the test.

4) Repair of an overactive sanity check in H5C__reconstruct_cache_contents().

5) Other minor tidies in passing.

Tested serial and parallel, debug and production on Jelly.
2017-03-28 11:21:40 -05:00
Quincey Koziol
0313cbb91d Final merge of page buffering branch to develop 2017-03-13 21:30:37 -07:00
Quincey Koziol
0b78740ff4 Merge in reentrency changes to "make space in cache" from page_buffering branch. 2017-03-13 07:45:42 -07:00
Quincey Koziol
c4a36e0bb3 Minor cleanups and bring over "prefetched dirty" fixes for entries loaded from
a cache image.
2017-03-12 01:57:19 -08:00
Quincey Koziol
5df52404bc Misc. small cleanups to sync against incoming page buffering changes. 2017-03-02 06:24:46 -08:00
Quincey Koziol
90a0d07f09 Normalize against incoming page buffering changes. 2017-03-01 10:04:28 -08:00
Quincey Koziol
5db402afbb Corrected version of 4b5e05c084:
Fix some more signed -> unsigned value issues with cache data structures,
    also misc. style cleanups.  All to align w/incoming page_buffering changes.
2017-02-27 21:45:55 -08:00
Quincey Koziol
e5fb4191de Revert "Fix some more signed -> unsigned value issues with cache data structures, also"
This reverts commit 4b5e05c084.
2017-02-27 21:23:44 -08:00
Quincey Koziol
321adc3a6f Align w/incoming page buffering changes. 2017-02-25 03:40:00 -08:00
Quincey Koziol
4b5e05c084 Fix some more signed -> unsigned value issues with cache data structures, also
misc. style cleanups.  All to align w/incoming page_buffering changes.
2017-02-22 23:21:41 -08:00
Quincey Koziol
5d7aba67f7 Simplify H5C__serialize_single_entry(), using H5C__generate_image() 2017-02-01 20:21:06 -08:00
Quincey Koziol
1949d5756d Cache image feature and testing 2017-01-28 23:19:37 -08:00
Quincey Koziol
5a776edb81 Bring change to use array of metadata cache entry classes for H5C_create
instead of array of class names from cache image branch.
2017-01-27 23:18:47 -08:00
Quincey Koziol
349f41d974 Switch list lengths to unsigned integers (to align better w/cache image merge) 2017-01-27 20:35:14 -08:00
Quincey Koziol
8d4c84eae2 Bring changes to metadata cache "get entry status" call and new
"child serialized / unserialized" messages and support from the cache image
branch.
2017-01-06 11:37:17 -08:00
Quincey Koziol
afd7e5b476 Bring file shutdown code from cache image branch 2017-01-04 21:36:14 -08:00
Quincey Koziol
e73a32b852 Remove 'const' from cache client pre_serialize callback, to reduce warnings,
and correspondingly remove 'const' from some internal routines.  Also rename
some H5MF* routines to reflect their static/package usage.
2017-01-03 08:28:05 -08:00
Quincey Koziol
edd3ff3098 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop_merge_cache_image_04 2017-01-02 12:09:34 -08:00
Quincey Koziol
ce3877d298 Align with incoming cache_image branch changes: use the index list (instead of
the hash buckets) for scanning the entries during a flush, and also add in
counters for tracking operations during cache flushes.
2017-01-02 12:06:08 -08:00
Dana Robinson
54629912eb Fixed a macro in H5Cpkg.h that was only updated in the version that
is used in develop/debug mode.
2017-01-01 23:30:48 -05:00
Quincey Koziol
0610c41c75 Bring support for doubly-linked list of all entries in cache from incoming
cache image branch.
2016-12-30 02:22:48 -08:00
Quincey Koziol
da2f1610d1 More normalizations against incoming cache image branch. 2016-12-29 02:40:26 -08:00
Quincey Koziol
64a339183f Bring SWMR support in to the main development branch. (Finally!) More tests
and the tool and API wrappers will be coming in over the weekend.
2016-12-02 08:07:04 -08:00
Quincey Koziol
2cb2d5a533 Remove "collective write list" parameter from H5C__flush_single_entry() as it
is only used in a couple of places.  The collective write list has been moved
to be internal to the cache data structure instead.
2016-11-28 01:26:33 -06:00
Quincey Koziol
460b573a73 Eliminate unnecessary data structure for parallel collective metadata cache I/O 2016-11-27 19:00:12 -06:00
Quincey Koziol
80ac4343cd Align w/minor cleanups in revise_chunks branch. 2016-11-11 23:14:58 -08:00
Quincey Koziol
492eae3995 Clean up cache code to eliminate dead-ends and unify code. 2016-11-10 12:49:22 -08:00
Quincey Koziol
9504d3f337 Switch to new, more scalable, metadata cache entry tagging. 2016-11-06 23:14:10 -08:00
Quincey Koziol
bb6cb6adb0 Code style and warning cleanups, from revise_chunks branch. 2016-11-06 12:08:19 -08:00
Quincey Koziol
af057ac92b Add logging prototypes and cache struct fields. 2016-11-03 22:53:55 -07:00
Quincey Koziol
b8f809981b [svn-r30112] Description:
Move updated flush dependency code in metadata cache from revise_chunks
branch to trunk.  Also many of the cleanups from r30111 in the revise_chunks
branch.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-06-28 16:39:09 -05:00
Quincey Koziol
7a9e13afdb [svn-r30068] Description:
Bring metadata cache corking to trunk.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-06-13 12:49:39 -05:00
Quincey Koziol
d124a1fe47 [svn-r30035] Description:
Extract tagging routines into separate source module.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial & parallel
    (h5committest forthcoming)
2016-06-06 01:41:16 -05:00
Quincey Koziol
e1f276f267 [svn-r30033] Description:
Extract epoch marker metadata client into separate source file.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial & parallel
    (h5committest forthcoming)
2016-06-06 00:51:17 -05:00
Quincey Koziol
c8a6c6030a [svn-r29077] Description:
Normalize against the trunk, in preparation for final merge.

Tested on:
    MacOSX/64 10.11.3 (amazon) w/serial & parallel
    (h5committest not required on this branch)
2016-02-10 12:55:55 -05:00
Quincey Koziol
06547eb4dd [svn-r28895] Description:
Minor code tweaks and cleanups during review.

Tested on:
    MacOSX/64 10.11.2 (amazon) w/serial & parallel
    (h5comittest not required on this branch)
2016-01-13 23:30:50 -05:00
Mohamad Chaarawi
7a0cdfbbac [svn-r28636] merge from trunk. 2015-12-14 10:22:29 -05:00
Quincey Koziol
e3c415fe5a [svn-r28452] Description:
Normalization changes against revise_chunks branch.

Tested on:
    MacOSX/64 10.11.1 (amazon) w/serial & parallel
    (h5committest forthcoming)
2015-11-23 15:52:33 -05:00
Mohamad Chaarawi
8d131aca15 [svn-r27929] merge from trunk. 2015-10-01 11:12:02 -05:00
Quincey Koziol
52ac462e7c [svn-r27805] Description:
Shut warnings from purify up.

Tested on:
    Linux/32 2.6 (jam) w/purify
    (Too minor to require h5committest)
2015-09-16 12:23:47 -05:00
Quincey Koziol
1023374492 [svn-r27768] Description:
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
2015-09-13 22:58:59 -05:00
Quincey Koziol
26baf1a805 [svn-r27710] Description:
Bring the "metadata rings" code from its branch (mdc_rings_v2) to the trunk.
(This change will support the page buffering feature)

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    (h5committest forthcoming)
2015-09-09 01:33:03 -05:00
Mohamad Chaarawi
54497d2b53 [svn-r27436] merge from trunk. 2015-07-27 10:39:54 -05:00
Quincey Koziol
1a5c36ce7e [svn-r27298] Description:
Separate H5AC layer from using package-scoped pieces of the H5C layer,
moving from including H5Cpkg.h to H5Cprivate.h.

Tested on:
    MacOSX/64 10.10.3 (amazon) w/serial, parallel & production
    Linux/32 2.6.x (jam) w/serial & parallel
2015-06-29 17:17:24 -05:00