org.apache.lucene.benchmark.byTask.tasks
Class CreateIndexTask

java.lang.Object
  extended by org.apache.lucene.benchmark.byTask.tasks.PerfTask
      extended by org.apache.lucene.benchmark.byTask.tasks.CreateIndexTask
All Implemented Interfaces:
Cloneable

public class CreateIndexTask
extends PerfTask

Create an index.
Other side effects: index writer object in perfRunData is set.
Relevant properties: merge.factor (default 10), max.buffered (default no flush), max.field.length (default 10,000 tokens), max.field.length, compound (default true), ram.flush.mb [default 0], merge.policy (default org.apache.lucene.index.LogByteSizeMergePolicy), merge.scheduler (default org.apache.lucene.index.ConcurrentMergeScheduler), concurrent.merge.scheduler.max.thread.count and concurrent.merge.scheduler.max.merge.count (defaults per ConcurrentMergeScheduler) .

This task also supports a "writer.info.stream" property with the following values:


Field Summary
 
Fields inherited from class org.apache.lucene.benchmark.byTask.tasks.PerfTask
logStep, NEW_LINE, params, stopNow
 
Constructor Summary
CreateIndexTask(PerfRunData runData)
           
 
Method Summary
static IndexWriter configureWriter(Config config, PerfRunData runData, IndexWriterConfig.OpenMode mode, IndexCommit commit)
           
static IndexWriterConfig createWriterConfig(Config config, PerfRunData runData, IndexWriterConfig.OpenMode mode, IndexCommit commit)
           
 int doLogic()
          Perform the task once (ignoring repetitions specification) Return number of work items done by this task.
static IndexDeletionPolicy getIndexDeletionPolicy(Config config)
           
 
Methods inherited from class org.apache.lucene.benchmark.byTask.tasks.PerfTask
clone, close, getBackgroundDeltaPriority, getDepth, getLogMessage, getName, getParams, getRunData, getRunInBackground, isDisableCounting, runAndMaybeStats, setDepth, setDisableCounting, setName, setParams, setRunInBackground, setup, shouldNeverLogAtStart, shouldNotRecordStats, stopNow, supportsParams, tearDown, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CreateIndexTask

public CreateIndexTask(PerfRunData runData)
Method Detail

getIndexDeletionPolicy

public static IndexDeletionPolicy getIndexDeletionPolicy(Config config)

doLogic

public int doLogic()
            throws IOException
Description copied from class: PerfTask
Perform the task once (ignoring repetitions specification) Return number of work items done by this task. For indexing that can be number of docs added. For warming that can be number of scanned items, etc.

Specified by:
doLogic in class PerfTask
Returns:
number of work items done by this task.
Throws:
IOException

createWriterConfig

public static IndexWriterConfig createWriterConfig(Config config,
                                                   PerfRunData runData,
                                                   IndexWriterConfig.OpenMode mode,
                                                   IndexCommit commit)

configureWriter

public static IndexWriter configureWriter(Config config,
                                          PerfRunData runData,
                                          IndexWriterConfig.OpenMode mode,
                                          IndexCommit commit)
                                   throws CorruptIndexException,
                                          LockObtainFailedException,
                                          IOException
Throws:
CorruptIndexException
LockObtainFailedException
IOException