You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by nw...@apache.org on 2017/04/16 10:28:54 UTC
[16/16] lucy git commit: Merge branch 'improve-locking'
Merge branch 'improve-locking'
Fixes LUCY-323.
- Major rewrite of FilePurger, making it do less work.
- Eliminate global deletion lock, making PolyReader and FilePurger
never wait for a lock.
- Redesign Lock API in preparation for native locks.
- Remove LockFactory.
- Fix locking bug with non-default merge lock timeout.
- Fix locking bug with concurrent BackgroundMergers.
- Port some tests to C.
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/d7feb997
Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/d7feb997
Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/d7feb997
Branch: refs/heads/master
Commit: d7feb997003ae1fc84a348e8584ea97b69b02d95
Parents: 7a64a28 a3cf33f
Author: Nick Wellnhofer <we...@aevum.de>
Authored: Sun Apr 16 12:15:01 2017 +0200
Committer: Nick Wellnhofer <we...@aevum.de>
Committed: Sun Apr 16 12:15:01 2017 +0200
----------------------------------------------------------------------
core/Lucy/Docs/Cookbook/FastUpdates.md | 2 +-
core/Lucy/Docs/FileLocking.md | 5 +-
core/Lucy/Index/BackgroundMerger.c | 34 +-
core/Lucy/Index/FilePurger.c | 328 ++++++++-----------
core/Lucy/Index/FilePurger.cfh | 19 +-
core/Lucy/Index/IndexManager.c | 88 +----
core/Lucy/Index/IndexManager.cfh | 42 +--
core/Lucy/Index/IndexReader.c | 16 +-
core/Lucy/Index/IndexReader.cfh | 3 +-
core/Lucy/Index/Indexer.c | 61 ++--
core/Lucy/Index/PolyReader.c | 124 +++----
core/Lucy/Store/Lock.c | 258 ++-------------
core/Lucy/Store/Lock.cfh | 117 ++-----
core/Lucy/Store/LockFactory.c | 66 ----
core/Lucy/Store/LockFactory.cfh | 80 -----
core/Lucy/Store/LockFileLock.c | 363 +++++++++++++++++++++
core/Lucy/Store/LockFileLock.cfh | 49 +++
core/Lucy/Store/SharedLock.c | 173 ----------
core/Lucy/Store/SharedLock.cfh | 77 -----
go/build.go | 7 +-
go/lucy/index_test.go | 32 +-
go/lucy/store.go | 35 +-
go/lucy/store_test.go | 77 ++---
perl/buildlib/Lucy/Build/Binding/Store.pm | 100 ------
perl/lib/Lucy/Store/Lock.pm | 25 --
perl/lib/Lucy/Store/LockFactory.pm | 25 --
perl/t/105-folder.t | 29 +-
perl/t/106-locking.t | 89 -----
perl/t/109-read_locking.t | 53 ++-
perl/t/110-shared_lock.t | 90 -----
perl/t/111-index_manager.t | 32 +-
perl/t/core/106-lf_lock.t | 23 ++
perl/t/core/233-background_merger.t | 23 ++
test/Lucy/Test.c | 4 +
test/Lucy/Test/Index/NoMergeManager.c | 42 +++
test/Lucy/Test/Index/NoMergeManager.cfh | 30 ++
test/Lucy/Test/Index/TestBackgroundMerger.c | 208 ++++++++++++
test/Lucy/Test/Index/TestBackgroundMerger.cfh | 29 ++
test/Lucy/Test/Index/TestIndexManager.c | 2 +-
test/Lucy/Test/Index/TestSortWriter.c | 28 +-
test/Lucy/Test/Index/TestSortWriter.cfh | 15 -
test/Lucy/Test/Store/TestLock.c | 296 +++++++++++++++++
test/Lucy/Test/Store/TestLock.cfh | 29 ++
test/Lucy/Test/TestUtils.c | 17 +-
44 files changed, 1531 insertions(+), 1714 deletions(-)
----------------------------------------------------------------------