org.apache.lucene.index
Class IndexSplitter

java.lang.Object
  extended by org.apache.lucene.index.IndexSplitter

public class IndexSplitter
extends Object

Command-line tool that enables listing segments in an index, copying specific segments to another index, and deleting segments from an index.

This tool does file-level copying of segments files. This means it's unable to split apart a single segment into multiple segments. For example if your index is a single segment, this tool won't help. Also, it does basic file-level copying (using simple File{In,Out}putStream) so it will not work with non FSDirectory Directory impls.

WARNING: This API is experimental and might change in incompatible ways in the next release.
You can easily accidentally remove segments from your index so be careful!

NOTE: this tool is unaware of documents added atomically via IndexWriter.addDocuments(java.util.Collection) or IndexWriter.updateDocuments(org.apache.lucene.index.Term, java.util.Collection), which means it can easily break up such document groups.


Field Summary
 SegmentInfos infos
           
 
Constructor Summary
IndexSplitter(File dir)
           
 
Method Summary
 void listSegments()
           
static void main(String[] args)
           
 void remove(String[] segs)
           
 void split(File destDir, String[] segs)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

infos

public SegmentInfos infos
Constructor Detail

IndexSplitter

public IndexSplitter(File dir)
              throws IOException
Throws:
IOException
Method Detail

main

public static void main(String[] args)
                 throws Exception
Parameters:
args -
Throws:
Exception

listSegments

public void listSegments()
                  throws IOException
Throws:
IOException

remove

public void remove(String[] segs)
            throws IOException
Throws:
IOException

split

public void split(File destDir,
                  String[] segs)
           throws IOException
Throws:
IOException