com.bigdata.resources
Class SplitUtility.BuildIndexSegmentSplitTask

java.lang.Object
  extended by com.bigdata.journal.AbstractTask<T>
      extended by com.bigdata.resources.AbstractResourceManagerTask<BuildResult>
          extended by com.bigdata.resources.SplitUtility.BuildIndexSegmentSplitTask
All Implemented Interfaces:
ITask<BuildResult>, Callable<BuildResult>
Enclosing class:
SplitUtility

protected static class SplitUtility.BuildIndexSegmentSplitTask
extends AbstractResourceManagerTask<BuildResult>

Task used to build an IndexSegment from a restricted key-range of an index during a SplitIndexPartitionTask. This is a compacting merge since we want as much of the data for the index as possible in a single IndexSegment.

Version:
$Id: SplitUtility.java 2265 2009-10-26 12:51:06Z thompsonbry $
Author:
Bryan Thompson

Nested Class Summary
 
Nested classes/interfaces inherited from class com.bigdata.journal.AbstractTask
AbstractTask.DelegateTask<T>, AbstractTask.InnerReadWriteTxServiceCallable, AbstractTask.InnerWriteServiceCallable<T>, AbstractTask.ResubmitException
 
Field Summary
 
Fields inherited from class com.bigdata.resources.AbstractResourceManagerTask
DEBUG, INFO, log, resourceManager
 
Fields inherited from class com.bigdata.journal.AbstractTask
checkpointNanoTime, concurrencyManager, isReadWriteTx, nanoTime_assignedWorker, nanoTime_beginWork, nanoTime_finishedWork, nanoTime_submitTask, readOnly, taskCounters, timestamp, transactionManager, tx
 
Constructor Summary
SplitUtility.BuildIndexSegmentSplitTask(com.bigdata.resources.ViewMetadata vmd, Split split, Event parentEvent)
          Builds an IndexSegment from the lastCommitTime of the old journal.
 
Method Summary
protected  BuildResult doTask()
          Note: The generated IndexSegment is on the retentionSet and MUST be removed from that set once it has been incorporated in a restart safe manner into an index partition view or once the task fails.
 
Methods inherited from class com.bigdata.resources.AbstractResourceManagerTask
toString
 
Methods inherited from class com.bigdata.journal.AbstractTask
assertResource, assertRunning, assertUnisolated, call, clearLoggingContext, dropIndex, getCommitTime, getIndex, getJournal, getOnlyResource, getResource, getResourceManager, getTaskCounters, getTaskName, getTimestamp, isResource, registerIndex, setupLoggingContext, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SplitUtility.BuildIndexSegmentSplitTask

public SplitUtility.BuildIndexSegmentSplitTask(com.bigdata.resources.ViewMetadata vmd,
                                               Split split,
                                               Event parentEvent)
Builds an IndexSegment from the lastCommitTime of the old journal.

Parameters:
vmd -
split -
Method Detail

doTask

protected BuildResult doTask()
                      throws Exception
Note: The generated IndexSegment is on the retentionSet and MUST be removed from that set once it has been incorporated in a restart safe manner into an index partition view or once the task fails.

Specified by:
doTask in class AbstractTask<BuildResult>
Returns:
The object that will be returned by AbstractTask.call() iff the operation succeeds.
Throws:
Exception - The exception that will be thrown by AbstractTask.call() iff the operation fails.
InterruptedException - This exception SHOULD be thrown if Thread.interrupted() becomes true during execution.
See Also:
StoreManager.retentionSetAdd(java.util.UUID)


Copyright © 2006-2009 SYSTAP, LLC. All Rights Reserved.