public class TransactionProcessor
extends org.apache.hadoop.hbase.coprocessor.BaseRegionObserver
org.apache.hadoop.hbase.coprocessor.RegionObserver coprocessor that handles server-side processing
 for transactions:
 In order to use this coprocessor for transactions, configure the class on any table involved in transactions,
 or on all user tables by adding the following to hbase-site.xml:
 <property>
   <name>hbase.coprocessor.region.classes</name>
   <value>org.apache.tephra.hbase.coprocessor.TransactionProcessor</value>
 </property>
 
 
HBase Get and Scan operations should have the current transaction serialized on to the operation
 as an attribute:
 Transaction t = ...;
 Get get = new Get(...);
 TransactionCodec codec = new TransactionCodec();
 codec.addToOperation(get, t);
 
 
| Modifier and Type | Field and Description | 
|---|---|
| protected boolean | allowEmptyValues | 
| protected boolean | readNonTxnData | 
| protected Map<byte[],Long> | ttlByFamily | 
| Constructor and Description | 
|---|
| TransactionProcessor() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected org.apache.hadoop.hbase.regionserver.InternalScanner | createStoreScanner(org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment env,
                  String action,
                  TransactionVisibilityState snapshot,
                  org.apache.hadoop.hbase.regionserver.Store store,
                  List<? extends org.apache.hadoop.hbase.regionserver.KeyValueScanner> scanners,
                  org.apache.hadoop.hbase.regionserver.ScanType type,
                  long earliestPutTs) | 
| protected org.apache.hadoop.hbase.filter.Filter | getTransactionFilter(Transaction tx,
                    org.apache.hadoop.hbase.regionserver.ScanType type,
                    org.apache.hadoop.hbase.filter.Filter filter)Derived classes can override this method to customize the filter used to return data visible for the current
 transaction. | 
| protected com.google.common.base.Supplier<TransactionStateCache> | getTransactionStateCacheSupplier(org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment env) | 
| org.apache.hadoop.hbase.regionserver.InternalScanner | preCompactScannerOpen(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> c,
                     org.apache.hadoop.hbase.regionserver.Store store,
                     List<? extends org.apache.hadoop.hbase.regionserver.KeyValueScanner> scanners,
                     org.apache.hadoop.hbase.regionserver.ScanType scanType,
                     long earliestPutTs,
                     org.apache.hadoop.hbase.regionserver.InternalScanner s,
                     org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest request) | 
| void | preDelete(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> e,
         org.apache.hadoop.hbase.client.Delete delete,
         org.apache.hadoop.hbase.regionserver.wal.WALEdit edit,
         org.apache.hadoop.hbase.client.Durability durability) | 
| org.apache.hadoop.hbase.regionserver.InternalScanner | preFlushScannerOpen(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> c,
                   org.apache.hadoop.hbase.regionserver.Store store,
                   org.apache.hadoop.hbase.regionserver.KeyValueScanner memstoreScanner,
                   org.apache.hadoop.hbase.regionserver.InternalScanner scanner) | 
| void | preGetOp(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> e,
        org.apache.hadoop.hbase.client.Get get,
        List<org.apache.hadoop.hbase.Cell> results) | 
| org.apache.hadoop.hbase.regionserver.RegionScanner | preScannerOpen(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> e,
              org.apache.hadoop.hbase.client.Scan scan,
              org.apache.hadoop.hbase.regionserver.RegionScanner s) | 
| void | start(org.apache.hadoop.hbase.CoprocessorEnvironment e) | 
| void | stop(org.apache.hadoop.hbase.CoprocessorEnvironment e) | 
postAppend, postBatchMutate, postBatchMutateIndispensably, postBulkLoadHFile, postCheckAndDelete, postCheckAndPut, postClose, postCloseRegionOperation, postCompact, postCompact, postCompactSelection, postCompactSelection, postCompleteSplit, postDelete, postExists, postFlush, postFlush, postGetClosestRowBefore, postGetOp, postIncrement, postIncrementColumnValue, postInstantiateDeleteTracker, postLogReplay, postMutationBeforeWAL, postOpen, postPut, postRollBackSplit, postScannerClose, postScannerFilterRow, postScannerNext, postScannerOpen, postSplit, postStartRegionOperation, postStoreFileReaderOpen, postWALRestore, postWALRestore, preAppend, preAppendAfterRowLock, preBatchMutate, preBulkLoadHFile, preCheckAndDelete, preCheckAndDeleteAfterRowLock, preCheckAndPut, preCheckAndPutAfterRowLock, preClose, preCompact, preCompact, preCompactScannerOpen, preCompactSelection, preCompactSelection, preExists, preFlush, preFlush, preGetClosestRowBefore, preIncrement, preIncrementAfterRowLock, preIncrementColumnValue, preOpen, prePrepareTimeStampForDeleteVersion, prePut, preRollBackSplit, preScannerClose, preScannerNext, preSplit, preSplit, preSplitAfterPONR, preSplitBeforePONR, preStoreFileReaderOpen, preStoreScannerOpen, preWALRestore, preWALRestoreprotected boolean allowEmptyValues
protected boolean readNonTxnData
public void start(org.apache.hadoop.hbase.CoprocessorEnvironment e)
           throws IOException
start in interface org.apache.hadoop.hbase.Coprocessorstart in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionprotected com.google.common.base.Supplier<TransactionStateCache> getTransactionStateCacheSupplier(org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment env)
public void stop(org.apache.hadoop.hbase.CoprocessorEnvironment e)
          throws IOException
stop in interface org.apache.hadoop.hbase.Coprocessorstop in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionpublic void preGetOp(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> e,
            org.apache.hadoop.hbase.client.Get get,
            List<org.apache.hadoop.hbase.Cell> results)
              throws IOException
preGetOp in interface org.apache.hadoop.hbase.coprocessor.RegionObserverpreGetOp in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionpublic void preDelete(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> e,
             org.apache.hadoop.hbase.client.Delete delete,
             org.apache.hadoop.hbase.regionserver.wal.WALEdit edit,
             org.apache.hadoop.hbase.client.Durability durability)
               throws IOException
preDelete in interface org.apache.hadoop.hbase.coprocessor.RegionObserverpreDelete in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionpublic org.apache.hadoop.hbase.regionserver.RegionScanner preScannerOpen(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> e,
                                                                org.apache.hadoop.hbase.client.Scan scan,
                                                                org.apache.hadoop.hbase.regionserver.RegionScanner s)
                                                                  throws IOException
preScannerOpen in interface org.apache.hadoop.hbase.coprocessor.RegionObserverpreScannerOpen in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionpublic org.apache.hadoop.hbase.regionserver.InternalScanner preFlushScannerOpen(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> c,
                                                                       org.apache.hadoop.hbase.regionserver.Store store,
                                                                       org.apache.hadoop.hbase.regionserver.KeyValueScanner memstoreScanner,
                                                                       org.apache.hadoop.hbase.regionserver.InternalScanner scanner)
                                                                         throws IOException
preFlushScannerOpen in interface org.apache.hadoop.hbase.coprocessor.RegionObserverpreFlushScannerOpen in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionpublic org.apache.hadoop.hbase.regionserver.InternalScanner preCompactScannerOpen(org.apache.hadoop.hbase.coprocessor.ObserverContext<org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment> c,
                                                                         org.apache.hadoop.hbase.regionserver.Store store,
                                                                         List<? extends org.apache.hadoop.hbase.regionserver.KeyValueScanner> scanners,
                                                                         org.apache.hadoop.hbase.regionserver.ScanType scanType,
                                                                         long earliestPutTs,
                                                                         org.apache.hadoop.hbase.regionserver.InternalScanner s,
                                                                         org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest request)
                                                                           throws IOException
preCompactScannerOpen in interface org.apache.hadoop.hbase.coprocessor.RegionObserverpreCompactScannerOpen in class org.apache.hadoop.hbase.coprocessor.BaseRegionObserverIOExceptionprotected org.apache.hadoop.hbase.regionserver.InternalScanner createStoreScanner(org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment env,
                                                                      String action,
                                                                      TransactionVisibilityState snapshot,
                                                                      org.apache.hadoop.hbase.regionserver.Store store,
                                                                      List<? extends org.apache.hadoop.hbase.regionserver.KeyValueScanner> scanners,
                                                                      org.apache.hadoop.hbase.regionserver.ScanType type,
                                                                      long earliestPutTs)
                                                                           throws IOException
IOExceptionprotected org.apache.hadoop.hbase.filter.Filter getTransactionFilter(Transaction tx, org.apache.hadoop.hbase.regionserver.ScanType type, org.apache.hadoop.hbase.filter.Filter filter)
tx - the current transaction to applytype - the type of scan operation being performedCopyright © 2016 The Apache Software Foundation. All rights reserved.