|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.regionserver.MultiVersionConsistencyControl
@InterfaceAudience.Private public class MultiVersionConsistencyControl
Manages the read/write consistency within memstore. This provides an interface for readers to determine what entries to ignore, and a mechanism for writers to obtain new write numbers, then "commit" the new writes for readers to read (thus forming atomic transactions).
Nested Class Summary | |
---|---|
static class |
MultiVersionConsistencyControl.WriteEntry
|
Field Summary | |
---|---|
static long |
FIXED_SIZE
|
Constructor Summary | |
---|---|
MultiVersionConsistencyControl()
Default constructor. |
Method Summary | |
---|---|
MultiVersionConsistencyControl.WriteEntry |
beginMemstoreInsert()
Generate and return a MultiVersionConsistencyControl.WriteEntry with a new write number. |
void |
completeMemstoreInsert(MultiVersionConsistencyControl.WriteEntry e)
Complete a MultiVersionConsistencyControl.WriteEntry that was created by beginMemstoreInsert() . |
static long |
getThreadReadPoint()
Get this thread's read point. |
void |
initialize(long startPoint)
Initializes the memstoreRead/Write points appropriately. |
long |
memstoreReadPoint()
|
static void |
resetThreadReadPoint()
Set the thread MVCC read point to 0 (include everything). |
static long |
resetThreadReadPoint(MultiVersionConsistencyControl mvcc)
Set the thread MVCC read point to whatever the current read point is in this particular instance of MVCC. |
static void |
setThreadReadPoint(long readPoint)
Set the thread read point to the given value. |
void |
waitForRead(MultiVersionConsistencyControl.WriteEntry e)
Wait for the global readPoint to advance upto the specified transaction number. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final long FIXED_SIZE
Constructor Detail |
---|
public MultiVersionConsistencyControl()
Method Detail |
---|
public void initialize(long startPoint)
startPoint
- public static long getThreadReadPoint()
public static void setThreadReadPoint(long readPoint)
public static long resetThreadReadPoint(MultiVersionConsistencyControl mvcc)
public static void resetThreadReadPoint()
public MultiVersionConsistencyControl.WriteEntry beginMemstoreInsert()
MultiVersionConsistencyControl.WriteEntry
with a new write number.
To complete the WriteEntry and wait for it to be visible,
call completeMemstoreInsert(WriteEntry)
.
public void completeMemstoreInsert(MultiVersionConsistencyControl.WriteEntry e)
MultiVersionConsistencyControl.WriteEntry
that was created by beginMemstoreInsert()
.
At the end of this call, the global read point is at least as large as the write point
of the passed in WriteEntry. Thus, the write is visible to MVCC readers.
public void waitForRead(MultiVersionConsistencyControl.WriteEntry e)
public long memstoreReadPoint()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |