public final class IndexUpgrader extends Object
java -cp lucene-core.jar org.apache.lucene.index.IndexUpgrader [-delete-prior-commits] [-verbose] indexDirAlternatively this class can be instantiated and
upgrade()
invoked. It uses UpgradeIndexMergePolicy
and triggers the upgrade via an forceMerge request to IndexWriter
.
This tool keeps only the last commit in an index; for this
reason, if the incoming index has more than one commit, the tool
refuses to run by default. Specify -delete-prior-commits
to override this, allowing the tool to delete all but the last commit.
From Java code this can be enabled by passing true
to
IndexUpgrader(Directory,InfoStream,boolean)
.
Warning: This tool may reorder documents if the index was partially
upgraded before execution (e.g., documents were added). If your application relies
on "monotonicity" of doc IDs (which means that the order in which the documents
were added to the index is preserved), do a full forceMerge instead.
The MergePolicy
set by IndexWriterConfig
may also reorder
documents.
Constructor and Description |
---|
IndexUpgrader(Directory dir)
Creates index upgrader on the given directory, using an
IndexWriter using the given
matchVersion . |
IndexUpgrader(Directory dir,
IndexWriterConfig iwc,
boolean deletePriorCommits)
Creates index upgrader on the given directory, using an
IndexWriter using the given
config. |
IndexUpgrader(Directory dir,
InfoStream infoStream,
boolean deletePriorCommits)
Creates index upgrader on the given directory, using an
IndexWriter using the given
matchVersion . |
Modifier and Type | Method and Description |
---|---|
static void |
main(String[] args)
Main method to run {code IndexUpgrader} from the
command-line.
|
void |
upgrade()
Perform the upgrade.
|
public IndexUpgrader(Directory dir)
IndexWriter
using the given
matchVersion
. The tool refuses to upgrade indexes with multiple commit points.public IndexUpgrader(Directory dir, InfoStream infoStream, boolean deletePriorCommits)
IndexWriter
using the given
matchVersion
. You have the possibility to upgrade indexes with multiple commit points by removing
all older ones. If infoStream
is not null
, all logging output will be sent to this stream.public IndexUpgrader(Directory dir, IndexWriterConfig iwc, boolean deletePriorCommits)
IndexWriter
using the given
config. You have the possibility to upgrade indexes with multiple commit points by removing
all older ones.public static void main(String[] args) throws IOException
IOException
public void upgrade() throws IOException
IOException
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.