|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.accumulo.fate.AgeOffStore<T>
public class AgeOffStore<T>
This store removes Repos, in the store it wraps, that are in a finished or new state for more than a configurable time period. No external time source is used. It starts tracking idle time when its created.
| Nested Class Summary | |
|---|---|
static interface |
AgeOffStore.TimeSource
|
| Nested classes/interfaces inherited from interface org.apache.accumulo.fate.ReadOnlyTStore |
|---|
ReadOnlyTStore.TStatus |
| Constructor Summary | |
|---|---|
AgeOffStore(TStore<T> store,
long ageOffTime)
|
|
AgeOffStore(TStore<T> store,
long ageOffTime,
AgeOffStore.TimeSource timeSource)
|
|
| Method Summary | |
|---|---|
void |
ageOff()
|
long |
create()
Create a new transaction id |
void |
delete(long tid)
Remove the transaction from the store. |
Serializable |
getProperty(long tid,
String prop)
Retrieve a transaction-specific property. |
ReadOnlyTStore.TStatus |
getStatus(long tid)
Get the state of a given transaction. |
List<Long> |
list()
list all transaction ids in store. |
void |
pop(long tid)
Remove the last pushed operation from the given transaction. |
void |
push(long tid,
Repo<T> repo)
Update the given transaction with the next operation |
long |
reserve()
Reserve a transaction that is IN_PROGRESS or FAILED_IN_PROGRESS. |
void |
reserve(long tid)
Reserve the specific tid. |
void |
setProperty(long tid,
String prop,
Serializable val)
|
void |
setStatus(long tid,
ReadOnlyTStore.TStatus status)
Update the state of a given transaction |
Repo<T> |
top(long tid)
Get the current operation for the given transaction id. |
void |
unreserve(long tid,
long deferTime)
Return the given transaction to the store. |
ReadOnlyTStore.TStatus |
waitForStatusChange(long tid,
EnumSet<ReadOnlyTStore.TStatus> expected)
Wait for the satus of a transaction to change |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public AgeOffStore(TStore<T> store,
long ageOffTime,
AgeOffStore.TimeSource timeSource)
public AgeOffStore(TStore<T> store,
long ageOffTime)
| Method Detail |
|---|
public void ageOff()
public long create()
TStore
create in interface TStore<T>public long reserve()
ReadOnlyTStore
reserve in interface ReadOnlyTStore<T>public void reserve(long tid)
ReadOnlyTStore
reserve in interface ReadOnlyTStore<T>
public void unreserve(long tid,
long deferTime)
ReadOnlyTStore
unreserve in interface ReadOnlyTStore<T>tid - transaction id, previously reserved.deferTime - time in millis to keep this transaction out of the pool used in the reserve method. must be non-negative.public Repo<T> top(long tid)
TStore
top in interface ReadOnlyTStore<T>top in interface TStore<T>tid - transaction id
public void push(long tid,
Repo<T> repo)
throws StackOverflowException
TStore
push in interface TStore<T>tid - the transaction idrepo - the operation
StackOverflowExceptionpublic void pop(long tid)
TStore
pop in interface TStore<T>public ReadOnlyTStore.TStatus getStatus(long tid)
ReadOnlyTStore
getStatus in interface ReadOnlyTStore<T>tid - transaction id, previously reserved.
public void setStatus(long tid,
ReadOnlyTStore.TStatus status)
TStore
setStatus in interface TStore<T>tid - transaction idstatus - execution status
public ReadOnlyTStore.TStatus waitForStatusChange(long tid,
EnumSet<ReadOnlyTStore.TStatus> expected)
ReadOnlyTStore
waitForStatusChange in interface ReadOnlyTStore<T>tid - transaction id, need not have been reserved.expected - a set of possible statuses we are interested in being notified about. may not be null.
public void setProperty(long tid,
String prop,
Serializable val)
setProperty in interface TStore<T>
public Serializable getProperty(long tid,
String prop)
ReadOnlyTStore
getProperty in interface ReadOnlyTStore<T>tid - transaction id, previously reserved.prop - name of property to retrieve.public void delete(long tid)
TStore
delete in interface TStore<T>tid - the transaction idpublic List<Long> list()
ReadOnlyTStore
list in interface ReadOnlyTStore<T>
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||