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:43 UTC
[05/16] lucy git commit: Remove LockFactory and make Lock a private
class
Remove LockFactory and make Lock a private class
If there are users who really use custom locks, this can be reverted.
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/3e229865
Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/3e229865
Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/3e229865
Branch: refs/heads/master
Commit: 3e2298650d8fc0213ce25078cadeb4f22d45bb5f
Parents: 1a8e02d
Author: Nick Wellnhofer <we...@aevum.de>
Authored: Thu Feb 16 17:47:33 2017 +0100
Committer: Nick Wellnhofer <we...@aevum.de>
Committed: Mon Feb 20 16:26:21 2017 +0100
----------------------------------------------------------------------
core/Lucy/Docs/Cookbook/FastUpdates.md | 2 +-
core/Lucy/Index/BackgroundMerger.c | 2 +-
core/Lucy/Index/FilePurger.c | 2 +-
core/Lucy/Index/IndexManager.c | 54 ++++--------
core/Lucy/Index/IndexManager.cfh | 10 +--
core/Lucy/Index/Indexer.c | 2 +-
core/Lucy/Store/Lock.cfh | 2 +-
core/Lucy/Store/LockFactory.c | 57 -------------
core/Lucy/Store/LockFactory.cfh | 65 ---------------
go/lucy/index_test.go | 14 ++--
go/lucy/store_test.go | 13 ---
perl/buildlib/Lucy/Build/Binding/Store.pm | 100 -----------------------
perl/lib/Lucy/Store/Lock.pm | 25 ------
perl/lib/Lucy/Store/LockFactory.pm | 25 ------
perl/t/111-index_manager.t | 9 +-
test/Lucy/Test/Index/NoMergeManager.c | 2 +-
test/Lucy/Test/Index/TestBackgroundMerger.c | 2 +-
test/Lucy/Test/Index/TestIndexManager.c | 2 +-
18 files changed, 39 insertions(+), 349 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Docs/Cookbook/FastUpdates.md
----------------------------------------------------------------------
diff --git a/core/Lucy/Docs/Cookbook/FastUpdates.md b/core/Lucy/Docs/Cookbook/FastUpdates.md
index 03f152c..2a65b47 100644
--- a/core/Lucy/Docs/Cookbook/FastUpdates.md
+++ b/core/Lucy/Docs/Cookbook/FastUpdates.md
@@ -197,7 +197,7 @@ void indexing_process(Obj *index, Doc *doc) {
void
background_merge_process(Obj *index) {
- IndexManager *manager = IxManager_new(NULL, NULL);
+ IndexManager *manager = IxManager_new(NULL);
IxManager_Set_Write_Lock_Timeout(manager, 60000);
BackgroundMerger bg_merger = BGMerger_new(index, manager);
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Index/BackgroundMerger.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Index/BackgroundMerger.c b/core/Lucy/Index/BackgroundMerger.c
index e9a1ae8..144139d 100644
--- a/core/Lucy/Index/BackgroundMerger.c
+++ b/core/Lucy/Index/BackgroundMerger.c
@@ -83,7 +83,7 @@ BGMerger_init(BackgroundMerger *self, Obj *index, IndexManager *manager) {
ivars->manager = (IndexManager*)INCREF(manager);
}
else {
- ivars->manager = IxManager_new(NULL, NULL);
+ ivars->manager = IxManager_new(NULL);
IxManager_Set_Write_Lock_Timeout(ivars->manager, 10000);
}
IxManager_Set_Folder(ivars->manager, folder);
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Index/FilePurger.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Index/FilePurger.c b/core/Lucy/Index/FilePurger.c
index 161f030..6811c33 100644
--- a/core/Lucy/Index/FilePurger.c
+++ b/core/Lucy/Index/FilePurger.c
@@ -58,7 +58,7 @@ FilePurger_init(FilePurger *self, Folder *folder, IndexManager *manager) {
ivars->folder = (Folder*)INCREF(folder);
ivars->manager = manager
? (IndexManager*)INCREF(manager)
- : IxManager_new(NULL, NULL);
+ : IxManager_new(NULL);
IxManager_Set_Folder(ivars->manager, folder);
return self;
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Index/IndexManager.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Index/IndexManager.c b/core/Lucy/Index/IndexManager.c
index 15cbbd9..82b9012 100644
--- a/core/Lucy/Index/IndexManager.c
+++ b/core/Lucy/Index/IndexManager.c
@@ -26,7 +26,6 @@
#include "Lucy/Store/DirHandle.h"
#include "Lucy/Store/Folder.h"
#include "Lucy/Store/Lock.h"
-#include "Lucy/Store/LockFactory.h"
#include "Lucy/Util/IndexFileNames.h"
#include "Lucy/Util/Json.h"
#include "Lucy/Util/StringHelper.h"
@@ -84,19 +83,17 @@ static const int32_t S_fibonacci[47] = {
};
IndexManager*
-IxManager_new(String *host, LockFactory *lock_factory) {
+IxManager_new(String *host) {
IndexManager *self = (IndexManager*)Class_Make_Obj(INDEXMANAGER);
- return IxManager_init(self, host, lock_factory);
+ return IxManager_init(self, host);
}
IndexManager*
-IxManager_init(IndexManager *self, String *host,
- LockFactory *lock_factory) {
+IxManager_init(IndexManager *self, String *host) {
IndexManagerIVARS *const ivars = IxManager_IVARS(self);
ivars->host = host
? Str_Clone(host)
: Str_new_from_trusted_utf8("", 0);
- ivars->lock_factory = (LockFactory*)INCREF(lock_factory);
ivars->folder = NULL;
ivars->write_lock_timeout = 1000;
ivars->write_lock_interval = 100;
@@ -113,7 +110,6 @@ IxManager_Destroy_IMP(IndexManager *self) {
IndexManagerIVARS *const ivars = IxManager_IVARS(self);
DECREF(ivars->host);
DECREF(ivars->folder);
- DECREF(ivars->lock_factory);
SUPER_DESTROY(self, INDEXMANAGER);
}
@@ -256,49 +252,34 @@ IxManager_Choose_Sparse_IMP(IndexManager *self, I32Array *doc_counts) {
return threshold;
}
-static LockFactory*
-S_obtain_lock_factory(IndexManager *self) {
- IndexManagerIVARS *const ivars = IxManager_IVARS(self);
- if (!ivars->lock_factory) {
- if (!ivars->folder) {
- THROW(ERR, "Can't create a LockFactory without a Folder");
- }
- ivars->lock_factory = LockFact_new(ivars->folder, ivars->host);
- }
- return ivars->lock_factory;
-}
-
Lock*
IxManager_Make_Write_Lock_IMP(IndexManager *self) {
IndexManagerIVARS *const ivars = IxManager_IVARS(self);
String *write_lock_name = SSTR_WRAP_C("write");
- LockFactory *lock_factory = S_obtain_lock_factory(self);
- return LockFact_Make_Lock(lock_factory, write_lock_name,
- (int32_t)ivars->write_lock_timeout,
- (int32_t)ivars->write_lock_interval,
- true);
+ return (Lock*)LFLock_new(ivars->folder, write_lock_name, ivars->host,
+ (int32_t)ivars->write_lock_timeout,
+ (int32_t)ivars->write_lock_interval,
+ true);
}
Lock*
IxManager_Make_Deletion_Lock_IMP(IndexManager *self) {
IndexManagerIVARS *const ivars = IxManager_IVARS(self);
String *lock_name = SSTR_WRAP_C("deletion");
- LockFactory *lock_factory = S_obtain_lock_factory(self);
- return LockFact_Make_Lock(lock_factory, lock_name,
- (int32_t)ivars->deletion_lock_timeout,
- (int32_t)ivars->deletion_lock_interval,
- true);
+ return (Lock*)LFLock_new(ivars->folder, lock_name, ivars->host,
+ (int32_t)ivars->deletion_lock_timeout,
+ (int32_t)ivars->deletion_lock_interval,
+ true);
}
Lock*
IxManager_Make_Merge_Lock_IMP(IndexManager *self) {
IndexManagerIVARS *const ivars = IxManager_IVARS(self);
String *merge_lock_name = SSTR_WRAP_C("merge");
- LockFactory *lock_factory = S_obtain_lock_factory(self);
- return LockFact_Make_Lock(lock_factory, merge_lock_name,
- (int32_t)ivars->merge_lock_timeout,
- (int32_t)ivars->merge_lock_interval,
- true);
+ return (Lock*)LFLock_new(ivars->folder, merge_lock_name, ivars->host,
+ (int32_t)ivars->merge_lock_timeout,
+ (int32_t)ivars->merge_lock_interval,
+ true);
}
void
@@ -344,7 +325,7 @@ IxManager_Remove_Merge_Data_IMP(IndexManager *self) {
Lock*
IxManager_Make_Snapshot_Read_Lock_IMP(IndexManager *self,
String *filename) {
- LockFactory *lock_factory = S_obtain_lock_factory(self);
+ IndexManagerIVARS *const ivars = IxManager_IVARS(self);
if (!Str_Starts_With_Utf8(filename, "snapshot_", 9)
|| !Str_Ends_With_Utf8(filename, ".json", 5)
@@ -356,7 +337,8 @@ IxManager_Make_Snapshot_Read_Lock_IMP(IndexManager *self,
size_t lock_name_len = Str_Length(filename) - (sizeof(".json") - 1);
String *lock_name = Str_SubString(filename, 0, lock_name_len);
- Lock *lock = LockFact_Make_Lock(lock_factory, lock_name, 1000, 100, false);
+ Lock *lock = (Lock*)LFLock_new(ivars->folder, lock_name, ivars->host,
+ 1000, 100, false);
DECREF(lock_name);
return lock;
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Index/IndexManager.cfh
----------------------------------------------------------------------
diff --git a/core/Lucy/Index/IndexManager.cfh b/core/Lucy/Index/IndexManager.cfh
index be6389a..a94517d 100644
--- a/core/Lucy/Index/IndexManager.cfh
+++ b/core/Lucy/Index/IndexManager.cfh
@@ -31,7 +31,6 @@ public class Lucy::Index::IndexManager nickname IxManager
Folder *folder;
String *host;
- LockFactory *lock_factory;
uint32_t write_lock_timeout;
uint32_t write_lock_interval;
uint32_t merge_lock_timeout;
@@ -42,19 +41,16 @@ public class Lucy::Index::IndexManager nickname IxManager
/** Create a new IndexManager.
*
* @param host An identifier which should be unique per-machine.
- * @param lock_factory A LockFactory.
*/
public inert incremented IndexManager*
- new(String *host = NULL, LockFactory *lock_factory = NULL);
+ new(String *host = NULL);
/** Initialize an IndexManager.
*
* @param host An identifier which should be unique per-machine.
- * @param lock_factory A LockFactory.
*/
public inert IndexManager*
- init(IndexManager *self, String *host = NULL,
- LockFactory *lock_factory = NULL);
+ init(IndexManager *self, String *host = NULL);
public void
Destroy(IndexManager *self);
@@ -105,7 +101,7 @@ public class Lucy::Index::IndexManager nickname IxManager
/** Create the Lock which controls access to modifying the logical content
* of the index.
*/
- public incremented Lock*
+ incremented Lock*
Make_Write_Lock(IndexManager *self);
/** Create the Lock which grants permission to delete obsolete snapshot
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Index/Indexer.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Index/Indexer.c b/core/Lucy/Index/Indexer.c
index 2381b26..be5519a 100644
--- a/core/Lucy/Index/Indexer.c
+++ b/core/Lucy/Index/Indexer.c
@@ -92,7 +92,7 @@ Indexer_init(Indexer *self, Schema *schema, Obj *index,
ivars->folder = folder;
ivars->manager = manager
? (IndexManager*)INCREF(manager)
- : IxManager_new(NULL, NULL);
+ : IxManager_new(NULL);
IxManager_Set_Folder(ivars->manager, folder);
// Get a write lock for this folder.
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Store/Lock.cfh
----------------------------------------------------------------------
diff --git a/core/Lucy/Store/Lock.cfh b/core/Lucy/Store/Lock.cfh
index 598c777..bef6dae 100644
--- a/core/Lucy/Store/Lock.cfh
+++ b/core/Lucy/Store/Lock.cfh
@@ -27,7 +27,7 @@ parcel Lucy;
* help clear away stale locks.
*/
-public abstract class Lucy::Store::Lock inherits Clownfish::Obj {
+abstract class Lucy::Store::Lock inherits Clownfish::Obj {
Folder *folder;
String *name;
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Store/LockFactory.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Store/LockFactory.c b/core/Lucy/Store/LockFactory.c
deleted file mode 100644
index bd501f3..0000000
--- a/core/Lucy/Store/LockFactory.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define C_LUCY_LOCKFACTORY
-#include "Lucy/Util/ToolSet.h"
-
-#include <stdio.h>
-#include <ctype.h>
-
-#include "Lucy/Store/LockFactory.h"
-#include "Lucy/Store/Folder.h"
-#include "Lucy/Store/Lock.h"
-
-LockFactory*
-LockFact_new(Folder *folder, String *host) {
- LockFactory *self = (LockFactory*)Class_Make_Obj(LOCKFACTORY);
- return LockFact_init(self, folder, host);
-}
-
-LockFactory*
-LockFact_init(LockFactory *self, Folder *folder, String *host) {
- LockFactoryIVARS *const ivars = LockFact_IVARS(self);
- ivars->folder = (Folder*)INCREF(folder);
- ivars->host = Str_Clone(host);
- return self;
-}
-
-void
-LockFact_Destroy_IMP(LockFactory *self) {
- LockFactoryIVARS *const ivars = LockFact_IVARS(self);
- DECREF(ivars->folder);
- DECREF(ivars->host);
- SUPER_DESTROY(self, LOCKFACTORY);
-}
-
-Lock*
-LockFact_Make_Lock_IMP(LockFactory *self, String *name, int32_t timeout,
- int32_t interval, bool exclusive_only) {
- LockFactoryIVARS *const ivars = LockFact_IVARS(self);
- return (Lock*)LFLock_new(ivars->folder, name, ivars->host, timeout,
- interval, exclusive_only);
-}
-
-
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/core/Lucy/Store/LockFactory.cfh
----------------------------------------------------------------------
diff --git a/core/Lucy/Store/LockFactory.cfh b/core/Lucy/Store/LockFactory.cfh
deleted file mode 100644
index 47152b6..0000000
--- a/core/Lucy/Store/LockFactory.cfh
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-parcel Lucy;
-
-/** Create Locks.
- *
- * LockFactory is used to spin off interprocess mutex locks used by various
- * index reading and writing components. The default implementation uses
- * lockfiles, but LockFactory subclasses which are implemented using
- * alternatives such as flock() are possible.
- */
-
-public class Lucy::Store::LockFactory nickname LockFact
- inherits Clownfish::Obj {
-
- Folder *folder;
- String *host;
-
- /** Create a new LockFactory.
- *
- * @param folder A [](cfish:Folder).
- * @param host An identifier which should be unique per-machine.
- */
- public inert incremented LockFactory*
- new(Folder *folder, String *host);
-
- /** Initialize a LockFactory.
- *
- * @param folder A [](cfish:Folder).
- * @param host An identifier which should be unique per-machine.
- */
- public inert LockFactory*
- init(LockFactory *self, Folder *folder, String *host);
-
- /** Return a Lock object.
- *
- * @param name A file-system-friendly id which identifies the
- * resource to be locked.
- * @param timeout Time in milliseconds to keep retrying before abandoning
- * the attempt to obtain a lock.
- * @param interval Time in milliseconds between retries.
- */
- public incremented Lock*
- Make_Lock(LockFactory *self, String *name, int32_t timeout = 0,
- int32_t interval = 100, bool exclusive_only);
-
- public void
- Destroy(LockFactory *self);
-}
-
-
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/go/lucy/index_test.go
----------------------------------------------------------------------
diff --git a/go/lucy/index_test.go b/go/lucy/index_test.go
index d47785e..bf1ba1e 100644
--- a/go/lucy/index_test.go
+++ b/go/lucy/index_test.go
@@ -148,7 +148,7 @@ func TestBackgroundMergerMisc(t *testing.T) {
func TestIndexManagerAccessors(t *testing.T) {
host := "dev.example.com"
- manager := NewIndexManager(host, nil)
+ manager := NewIndexManager(host)
if got := manager.GetHost(); got != host {
t.Errorf("GetHost: %v", got)
}
@@ -184,9 +184,9 @@ func TestIndexManagerAccessors(t *testing.T) {
}
func TestIndexManagerLocks(t *testing.T) {
- manager := NewIndexManager("", nil)
+ manager := NewIndexManager("")
manager.SetFolder(NewRAMFolder(""))
- if _, ok := manager.MakeWriteLock().(Lock); !ok {
+ if _, ok := manager.makeWriteLock().(Lock); !ok {
t.Errorf("MakeWriteLock")
}
if _, ok := manager.makeMergeLock().(Lock); !ok {
@@ -203,7 +203,7 @@ func TestIndexManagerLocks(t *testing.T) {
func TestIndexManagerMergeData(t *testing.T) {
var err error
- manager := NewIndexManager("", nil)
+ manager := NewIndexManager("")
manager.SetFolder(NewRAMFolder(""))
err = manager.WriteMergeData(42)
if err != nil {
@@ -223,7 +223,7 @@ func TestIndexManagerMergeData(t *testing.T) {
}
func TestIndexManagerMisc(t *testing.T) {
- manager := NewIndexManager("", nil)
+ manager := NewIndexManager("")
manager.SetFolder(NewRAMFolder(""))
if got, err := manager.MakeSnapshotFilename(); !strings.Contains(got, "snapshot") || err != nil {
t.Errorf("MakeSnapshotFilename: %s, %v", got, err)
@@ -238,7 +238,7 @@ func TestIndexManagerMisc(t *testing.T) {
func TestIndexManagerRecycle(t *testing.T) {
index := createTestIndex("foo", "bar", "baz")
- manager := NewIndexManager("", nil)
+ manager := NewIndexManager("")
manager.SetFolder(index)
indexer, _ := OpenIndexer(&OpenIndexerArgs{Index: index})
searcher, _ := OpenIndexSearcher(index)
@@ -788,7 +788,7 @@ func TestIndexReaderOpen(t *testing.T) {
if got, err := OpenIndexReader(folder, snapshot, nil); got == nil || err != nil {
t.Errorf("With Snapshot: %v", err)
}
- manager := NewIndexManager("", nil)
+ manager := NewIndexManager("")
manager.SetFolder(folder)
if got, err := OpenIndexReader(folder, nil, manager); got == nil || err != nil {
t.Errorf("With IndexManager: %v", err)
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/go/lucy/store_test.go
----------------------------------------------------------------------
diff --git a/go/lucy/store_test.go b/go/lucy/store_test.go
index ec51244..89f5057 100644
--- a/go/lucy/store_test.go
+++ b/go/lucy/store_test.go
@@ -712,19 +712,6 @@ func TestLockFileLockAll(t *testing.T) {
lock.Release()
}
-func TestLockFactoryAll(t *testing.T) {
- folder := NewRAMFolder("")
- factory := NewLockFactory(folder, "dev.example.com")
- lock := factory.MakeLock("write", 10, 42)
- if _, ok := lock.(Lock); !ok {
- t.Errorf("MakeLock")
- }
- shlock := factory.MakeSharedLock("read", 10, 42)
- if _, ok := shlock.(SharedLock); !ok {
- t.Errorf("MakeSharedLock")
- }
-}
-
func TestCompoundFiles(t *testing.T) {
var err error
folder := NewRAMFolder("seg_6b")
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/perl/buildlib/Lucy/Build/Binding/Store.pm
----------------------------------------------------------------------
diff --git a/perl/buildlib/Lucy/Build/Binding/Store.pm b/perl/buildlib/Lucy/Build/Binding/Store.pm
index 4a0dc54..da0ebe4 100644
--- a/perl/buildlib/Lucy/Build/Binding/Store.pm
+++ b/perl/buildlib/Lucy/Build/Binding/Store.pm
@@ -26,9 +26,7 @@ sub bind_all {
$class->bind_filehandle;
$class->bind_folder;
$class->bind_instream;
- $class->bind_lock;
$class->bind_lockerr;
- $class->bind_lockfactory;
$class->bind_outstream;
$class->bind_ramfilehandle;
$class->bind_ramfolder;
@@ -213,68 +211,6 @@ END_XS_CODE
Clownfish::CFC::Binding::Perl::Class->register($binding);
}
-sub bind_lock {
- my $pod_spec = Clownfish::CFC::Binding::Perl::Pod->new;
- my $synopsis = <<'END_SYNOPSIS';
- my $lock = $lock_factory->make_lock(
- name => 'write',
- timeout => 5000,
- );
- $lock->obtain or die "can't get lock for " . $lock->get_name;
- do_stuff();
- $lock->release;
-END_SYNOPSIS
- my $constructor = <<'END_CONSTRUCTOR';
-=head2 new
-
- my $lock = Lucy::Store::Lock->new(
- name => 'commit', # required
- folder => $folder, # required
- host => $hostname, # required
- timeout => 5000, # default: 0
- interval => 1000, # default: 100
- );
-
-Abstract constructor.
-
-=over
-
-=item *
-
-B<folder> - A Folder.
-
-=item *
-
-B<name> - String identifying the resource to be locked, which must
-consist solely of characters matching [-_.A-Za-z0-9].
-
-=item *
-
-B<host> - A unique per-machine identifier.
-
-=item *
-
-B<timeout> - Time in milliseconds to keep retrying before abandoning
-the attempt to obtain a lock.
-
-=item *
-
-B<interval> - Time in milliseconds between retries.
-
-=back
-END_CONSTRUCTOR
- $pod_spec->set_synopsis($synopsis);
- $pod_spec->add_constructor( alias => 'new', pod => $constructor, );
-
- my $binding = Clownfish::CFC::Binding::Perl::Class->new(
- parcel => "Lucy",
- class_name => "Lucy::Store::Lock",
- );
- $binding->set_pod_spec($pod_spec);
-
- Clownfish::CFC::Binding::Perl::Class->register($binding);
-}
-
sub bind_lockerr {
my $pod_spec = Clownfish::CFC::Binding::Perl::Pod->new;
my $synopsis = <<'END_SYNOPSIS';
@@ -303,42 +239,6 @@ END_SYNOPSIS
Clownfish::CFC::Binding::Perl::Class->register($binding);
}
-sub bind_lockfactory {
- my $pod_spec = Clownfish::CFC::Binding::Perl::Pod->new;
- my $synopsis = <<'END_SYNOPSIS';
- use Sys::Hostname qw( hostname );
- my $hostname = hostname() or die "Can't get unique hostname";
- my $folder = Lucy::Store::FSFolder->new(
- path => '/path/to/index',
- );
- my $lock_factory = Lucy::Store::LockFactory->new(
- folder => $folder,
- host => $hostname,
- );
- my $write_lock = $lock_factory->make_lock(
- name => 'write',
- timeout => 5000,
- interval => 100,
- );
-END_SYNOPSIS
- my $constructor = <<'END_CONSTRUCTOR';
- my $lock_factory = Lucy::Store::LockFactory->new(
- folder => $folder, # required
- host => $hostname, # required
- );
-END_CONSTRUCTOR
- $pod_spec->set_synopsis($synopsis);
- $pod_spec->add_constructor( alias => 'new', sample => $constructor, );
-
- my $binding = Clownfish::CFC::Binding::Perl::Class->new(
- parcel => "Lucy",
- class_name => "Lucy::Store::LockFactory",
- );
- $binding->set_pod_spec($pod_spec);
-
- Clownfish::CFC::Binding::Perl::Class->register($binding);
-}
-
sub bind_outstream {
my $xs_code = <<'END_XS_CODE';
MODULE = Lucy PACKAGE = Lucy::Store::OutStream
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/perl/lib/Lucy/Store/Lock.pm
----------------------------------------------------------------------
diff --git a/perl/lib/Lucy/Store/Lock.pm b/perl/lib/Lucy/Store/Lock.pm
deleted file mode 100644
index 44e14ef..0000000
--- a/perl/lib/Lucy/Store/Lock.pm
+++ /dev/null
@@ -1,25 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-package Lucy::Store::Lock;
-use Lucy;
-our $VERSION = '0.006000';
-$VERSION = eval $VERSION;
-
-1;
-
-__END__
-
-
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/perl/lib/Lucy/Store/LockFactory.pm
----------------------------------------------------------------------
diff --git a/perl/lib/Lucy/Store/LockFactory.pm b/perl/lib/Lucy/Store/LockFactory.pm
deleted file mode 100644
index b8fc429..0000000
--- a/perl/lib/Lucy/Store/LockFactory.pm
+++ /dev/null
@@ -1,25 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-package Lucy::Store::LockFactory;
-use Lucy;
-our $VERSION = '0.006000';
-$VERSION = eval $VERSION;
-
-1;
-
-__END__
-
-
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/perl/t/111-index_manager.t
----------------------------------------------------------------------
diff --git a/perl/t/111-index_manager.t b/perl/t/111-index_manager.t
index 16c98ea..3cb616b 100644
--- a/perl/t/111-index_manager.t
+++ b/perl/t/111-index_manager.t
@@ -37,12 +37,9 @@ use Lucy::Test;
my $folder = Lucy::Store::RAMFolder->new;
-my $lock_factory = Lucy::Store::LockFactory->new(
- folder => $folder,
- host => 'me',
-);
-
-my $lock = $lock_factory->make_lock(
+my $lock = Lucy::Store::LockFileLock->new(
+ folder => $folder,
+ host => 'me',
name => 'angie',
timeout => 1000,
exclusive_only => 0,
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/test/Lucy/Test/Index/NoMergeManager.c
----------------------------------------------------------------------
diff --git a/test/Lucy/Test/Index/NoMergeManager.c b/test/Lucy/Test/Index/NoMergeManager.c
index 7c0804b..2a2b71c 100644
--- a/test/Lucy/Test/Index/NoMergeManager.c
+++ b/test/Lucy/Test/Index/NoMergeManager.c
@@ -25,7 +25,7 @@
NoMergeManager*
NoMergeManager_new() {
NoMergeManager *self = (NoMergeManager*)Class_Make_Obj(NOMERGEMANAGER);
- return (NoMergeManager*)IxManager_init((IndexManager*)self, NULL, NULL);
+ return (NoMergeManager*)IxManager_init((IndexManager*)self, NULL);
}
Vector*
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/test/Lucy/Test/Index/TestBackgroundMerger.c
----------------------------------------------------------------------
diff --git a/test/Lucy/Test/Index/TestBackgroundMerger.c b/test/Lucy/Test/Index/TestBackgroundMerger.c
index 084c49d..4852d7f 100644
--- a/test/Lucy/Test/Index/TestBackgroundMerger.c
+++ b/test/Lucy/Test/Index/TestBackgroundMerger.c
@@ -150,7 +150,7 @@ test_bg_merger(TestBatchRunner *runner) {
{
// Simulate failed background merge.
DECREF(bg_merger);
- IndexManager *manager = IxManager_new(NULL, NULL);
+ IndexManager *manager = IxManager_new(NULL);
bg_merger = BGMerger_new((Obj*)folder, manager);
BGMerger_Prepare_Commit(bg_merger);
DECREF(bg_merger);
http://git-wip-us.apache.org/repos/asf/lucy/blob/3e229865/test/Lucy/Test/Index/TestIndexManager.c
----------------------------------------------------------------------
diff --git a/test/Lucy/Test/Index/TestIndexManager.c b/test/Lucy/Test/Index/TestIndexManager.c
index 7bc0661..4177606 100644
--- a/test/Lucy/Test/Index/TestIndexManager.c
+++ b/test/Lucy/Test/Index/TestIndexManager.c
@@ -29,7 +29,7 @@ TestIxManager_new() {
static void
test_Choose_Sparse(TestBatchRunner *runner) {
- IndexManager *manager = IxManager_new(NULL, NULL);
+ IndexManager *manager = IxManager_new(NULL);
for (uint32_t num_segs = 2; num_segs < 20; num_segs++) {
I32Array *doc_counts = I32Arr_new_blank(num_segs);