bionic (3) Lucy::Index::BackgroundMerger.3pm.gz

Provided by: liblucy-perl_0.3.3-8_amd64 bug

NAME

       Lucy::Index::BackgroundMerger - Consolidate index segments in the background.

SYNOPSIS

           my $bg_merger = Lucy::Index::BackgroundMerger->new(
               index  => '/path/to/index',
           );
           $bg_merger->commit;

DESCRIPTION

       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 Lucy::Docs::Cookbook::FastUpdates for how to use
       this class to control worst-case index update performance.

       As with Indexer, see Lucy::Docs::FileLocking if your index is on a shared volume.

CONSTRUCTORS

   new( [labeled params] )
           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.

METHODS

   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.

   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.

   optimize()
       Optimize the index for search-time performance.  This may take a while, as it can involve rewriting large
       amounts of data.

INHERITANCE

       Lucy::Index::BackgroundMerger isa Lucy::Object::Obj.