static class HRegion.ReplayBatchOperation extends HRegion.BatchOperation<WALSplitter.MutationReplay>
HRegion.MutationBatchOperation as most
of the logic is same.HRegion.BatchOperation.Visitor| Modifier and Type | Field and Description |
|---|---|
private long |
origLogSeqNum |
atomic, durability, familyCellMaps, nextIndexToProcess, observedExceptions, operations, region, retCodeDetails, walEditsFromCoprocessors| Constructor and Description |
|---|
ReplayBatchOperation(HRegion region,
WALSplitter.MutationReplay[] operations,
long origLogSeqNum) |
| Modifier and Type | Method and Description |
|---|---|
void |
checkAndPrepare()
Validates each mutation and prepares a batch for write.
|
protected void |
checkAndPreparePut(Put p)
During replay, there could exist column families which are removed between region server
failure and replay
|
void |
closeRegionOperation() |
void |
completeMiniBatchOperations(MiniBatchOperationInProgress<Mutation> miniBatchOp,
MultiVersionConcurrencyControl.WriteEntry writeEntry)
This method completes mini-batch operations by calling postBatchMutate() CP hook (if
required) and completing mvcc.
|
Mutation |
getMutation(int index) |
Mutation[] |
getMutationsForCoprocs()
This method is potentially expensive and useful mostly for non-replay CP path.
|
long |
getNonce(int index) |
long |
getNonceGroup(int index) |
long |
getOrigLogSeqNum() |
boolean |
isInReplay() |
void |
prepareMiniBatchOperations(MiniBatchOperationInProgress<Mutation> miniBatchOp,
long timestamp,
List<Region.RowLock> acquiredRowLocks)
If necessary, calls preBatchMutate() CP hook for a mini-batch and updates metrics, cell
count, tags and timestamp for all cells of all operations in a mini-batch.
|
void |
startRegionOperation() |
MultiVersionConcurrencyControl.WriteEntry |
writeMiniBatchOperationsToMemStore(MiniBatchOperationInProgress<Mutation> miniBatchOp,
MultiVersionConcurrencyControl.WriteEntry writeEntry)
Write mini-batch operations to MemStore
|
applyFamilyMapToMemStore, buildWALEdits, checkAndPrepareMutation, checkAndPrepareMutation, createMiniBatch, doPostOpCleanupForMiniBatch, getClusterIds, isAtomic, isDone, isOperationPending, lockRowsAndBuildMiniBatch, size, visitBatchOperations, writeMiniBatchOperationsToMemStoreprivate long origLogSeqNum
public ReplayBatchOperation(HRegion region, WALSplitter.MutationReplay[] operations, long origLogSeqNum)
public Mutation getMutation(int index)
getMutation in class HRegion.BatchOperation<WALSplitter.MutationReplay>public long getNonceGroup(int index)
getNonceGroup in class HRegion.BatchOperation<WALSplitter.MutationReplay>public long getNonce(int index)
getNonce in class HRegion.BatchOperation<WALSplitter.MutationReplay>public Mutation[] getMutationsForCoprocs()
HRegion.BatchOperationgetMutationsForCoprocs in class HRegion.BatchOperation<WALSplitter.MutationReplay>public boolean isInReplay()
isInReplay in class HRegion.BatchOperation<WALSplitter.MutationReplay>public long getOrigLogSeqNum()
getOrigLogSeqNum in class HRegion.BatchOperation<WALSplitter.MutationReplay>public void startRegionOperation() throws IOException
startRegionOperation in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionpublic void closeRegionOperation() throws IOException
closeRegionOperation in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionprotected void checkAndPreparePut(Put p) throws IOException
checkAndPreparePut in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionpublic void checkAndPrepare() throws IOException
HRegion.BatchOperationHRegion.BatchOperation.checkAndPrepareMutation(int, long) in a
'for' loop over mutations.checkAndPrepare in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionpublic void prepareMiniBatchOperations(MiniBatchOperationInProgress<Mutation> miniBatchOp, long timestamp, List<Region.RowLock> acquiredRowLocks) throws IOException
HRegion.BatchOperationprepareMiniBatchOperations in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionpublic MultiVersionConcurrencyControl.WriteEntry writeMiniBatchOperationsToMemStore(MiniBatchOperationInProgress<Mutation> miniBatchOp, MultiVersionConcurrencyControl.WriteEntry writeEntry) throws IOException
HRegion.BatchOperationwriteMiniBatchOperationsToMemStore in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionpublic void completeMiniBatchOperations(MiniBatchOperationInProgress<Mutation> miniBatchOp, MultiVersionConcurrencyControl.WriteEntry writeEntry) throws IOException
HRegion.BatchOperationcompleteMiniBatchOperations in class HRegion.BatchOperation<WALSplitter.MutationReplay>IOExceptionCopyright © 2007–2019 The Apache Software Foundation. All rights reserved.