KinoSearch::Index::IndUsernContributed Perl KinoSearch::Index::IndexManager(3)NAMEKinoSearch::Index::IndexManager - Policies governing index updating,
locking, and file deletion.
SYNOPSIS
use Sys::Hostname qw( hostname );
my $hostname = hostname() or die "Can't get unique hostname";
my $manager = KinoSearch::Index::IndexManager->new(
host => $hostname,
);
# Index time:
my $indexer = KinoSearch::Index::Indexer->new(
index => '/path/to/index',
manager => $manager,
);
# Search time:
my $reader = KinoSearch::Index::IndexReader->open(
index => '/path/to/index',
manager => $manager,
);
my $searcher = KinoSearch::Search::IndexSearcher->new( index => $reader );
DESCRIPTION
IndexManager is an advanced-use class for controlling index locking,
updating, merging, and deletion behaviors.
IndexManager and Architecture are complementary classes: Architecture
is used to define traits and behaviors which cannot change for the life
of an index; IndexManager is used for defining rules which may change
from process to process.
CONSTRUCTORS
new( [labeled params] )
my $manager = KinoSearch::Index::IndexManager->new(
host => $hostname, # default: ""
);
· host - An identifier which should be unique per-machine.
· lock_factory - A LockFactory.
METHODSmake_write_lock()
Create the Lock which controls access to modifying the logical content
of the index.
recycle( [labeled params] )
Return an array of SegReaders representing segments that should be
consolidated. Implementations must balance index-time churn against
search-time degradation due to segment proliferation. The default
implementation prefers small segments or segments with a high
proportion of deletions.
· reader - A PolyReader.
· del_writer - A DeletionsWriter.
· cutoff - A segment number which all returned SegReaders must
exceed.
· optimize - A boolean indicating whether to spend extra time
optimizing the index for search-time performance.
set_folder(folder)
Setter for "folder" member. Typical clients (Indexer, IndexReader)
will use this method to install their own Folder instance.
get_folder()
Getter for "folder" member.
get_host()
Getter for "host" member.
set_write_lock_timeout(timeout)
Setter for write lock timeout. Default: 1000 milliseconds.
get_write_lock_timeout()
Getter for write lock timeout.
set_write_lock_interval(timeout)
Setter for write lock retry interval. Default: 100 milliseconds.
get_write_lock_interval()
Getter for write lock retry interval.
INHERITANCEKinoSearch::Index::IndexManager isa KinoSearch::Object::Obj.
COPYRIGHT AND LICENSE
Copyright 2005-2010 Marvin Humphrey
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
perl v5.14.12011-06-20KinoSearch::Index::IndexManager(3)