Lucy::Index::BackgroundMerger - Consolidate index segments in the background.
my $bg_merger = Lucy::Index::BackgroundMerger->new( index => '/path/to/index', ); $bg_merger->commit;
Adding documents to an index is usually fast, but every once in a while the index must be compacted and an update takes substantially longer to complete. See FastUpdates for how to use this class to control worst-case index update performance.
As with Indexer, see FileLocking if your index is on a shared volume.
my $bg_merger = Lucy::Index::BackgroundMerger->new( index => '/path/to/index', # required manager => $manager # default: created internally );
Open a new BackgroundMerger.
index - Either a string filepath or a Folder.
manager - An IndexManager. If not supplied, an IndexManager with a 10-second write lock timeout will be created.
$background_merger->optimize();
Optimize the index for search-time performance. This may take a while, as it can involve rewriting large amounts of data.
$background_merger->commit();
Commit any changes made to the index. Until this is called, none of the changes made during an indexing session are permanent.
Calls prepare_commit() implicitly if it has not already been called.
$background_merger->prepare_commit();
Perform the expensive setup for commit() in advance, so that commit() completes quickly.
Towards the end of prepare_commit(), the BackgroundMerger attempts to re-acquire the write lock, which is then held until commit() finishes and releases it.
Lucy::Index::BackgroundMerger isa Clownfish::Obj.
To install Lucy, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Lucy
CPAN shell
perl -MCPAN -e shell install Lucy
For more information on module installation, please visit the detailed CPAN module installation guide.