@InterfaceAudience.Private public class SplitTransactionImpl extends Object implements SplitTransaction
| Modifier and Type | Class and Description | 
|---|---|
| static class  | SplitTransactionImpl.JournalEntryImpl | 
SplitTransaction.JournalEntry, SplitTransaction.SplitTransactionPhase, SplitTransaction.TransactionListener| Modifier and Type | Field and Description | 
|---|---|
| SplitTransactionCoordination.SplitTransactionDetails | std | 
| Constructor and Description | 
|---|
| SplitTransactionImpl(Region r,
                    byte[] splitrow)Constructor | 
| Modifier and Type | Method and Description | 
|---|---|
| Put | addLocation(Put p,
           ServerName sn,
           long openSeqNum) | 
| PairOfSameType<Region> | execute(Server server,
       RegionServerServices services)Run the transaction. | 
| PairOfSameType<Region> | execute(Server server,
       RegionServerServices services,
       User user)Run the transaction. | 
| List<SplitTransaction.JournalEntry> | getJournal()Get the journal for the transaction. | 
| RegionServerServices | getRegionServerServices()Get the RegonServerServices of the server running the transaction or rollback | 
| Server | getServer()Get the Server running the transaction or rollback | 
| boolean | prepare()Does checks on split inputs. | 
| SplitTransaction | registerTransactionListener(SplitTransaction.TransactionListener listener)Register a listener for transaction preparation, execution, and possibly
 rollback phases. | 
| boolean | rollback(Server server,
        RegionServerServices services)Roll back a failed transaction | 
| boolean | rollback(Server server,
        RegionServerServices services,
        User user)Roll back a failed transaction | 
| PairOfSameType<Region> | stepsAfterPONR(Server server,
              RegionServerServices services,
              PairOfSameType<Region> regions)Deprecated.  | 
| PairOfSameType<Region> | stepsAfterPONR(Server server,
              RegionServerServices services,
              PairOfSameType<Region> regions,
              User user) | 
| PairOfSameType<Region> | stepsBeforePONR(Server server,
               RegionServerServices services,
               boolean testing) | 
public SplitTransactionCoordination.SplitTransactionDetails std
public SplitTransactionImpl(Region r, byte[] splitrow)
r - Region to splitsplitrow - Row to split aroundpublic boolean prepare()
                throws IOException
prepare in interface SplitTransactiontrue if the region is splittable else
 false if it is not (e.g. its already closed, etc.).IOExceptionpublic PairOfSameType<Region> stepsBeforePONR(Server server, RegionServerServices services, boolean testing) throws IOException
IOExceptionpublic PairOfSameType<Region> execute(Server server, RegionServerServices services) throws IOException
SplitTransactionexecute in interface SplitTransactionserver - Hosting server instance.  Can be null when testing.services - Used to online/offline regions.IOException - If thrown, transaction failed.
          Call SplitTransaction.rollback(Server, RegionServerServices)SplitTransaction.rollback(Server, RegionServerServices)public PairOfSameType<Region> execute(Server server, RegionServerServices services, User user) throws IOException
execute in interface SplitTransactionserver - Hosting server instance.  Can be null when testingservices - Used to online/offline regions.IOException - If thrown, transaction failed.
          Call rollback(Server, RegionServerServices)IOExceptionrollback(Server, RegionServerServices)@Deprecated public PairOfSameType<Region> stepsAfterPONR(Server server, RegionServerServices services, PairOfSameType<Region> regions) throws IOException
IOExceptionpublic PairOfSameType<Region> stepsAfterPONR(Server server, RegionServerServices services, PairOfSameType<Region> regions, User user) throws IOException
IOExceptionpublic Put addLocation(Put p, ServerName sn, long openSeqNum)
public boolean rollback(Server server, RegionServerServices services) throws IOException
SplitTransactionrollback in interface SplitTransactionserver - Hosting server instance (May be null when testing).IOException - If thrown, rollback failed.  Take drastic action.public boolean rollback(Server server, RegionServerServices services, User user) throws IOException
SplitTransactionrollback in interface SplitTransactionserver - Hosting server instance (May be null when testing).services - IOException - If thrown, rollback failed.  Take drastic action.public List<SplitTransaction.JournalEntry> getJournal()
SplitTransactionJournal entries are an opaque type represented as JournalEntry. They can also provide useful debugging information via their toString method.
getJournal in interface SplitTransactionpublic SplitTransaction registerTransactionListener(SplitTransaction.TransactionListener listener)
SplitTransactionA listener can abort a transaction by throwing an exception.
registerTransactionListener in interface SplitTransactionlistener - the listenerpublic Server getServer()
SplitTransactiongetServer in interface SplitTransactionpublic RegionServerServices getRegionServerServices()
SplitTransactiongetRegionServerServices in interface SplitTransactionCopyright © 2007-2016 The Apache Software Foundation. All Rights Reserved.