public class SyncedLockManager extends LockManager
lockTableLatches, nLockTables| Constructor and Description |
|---|
SyncedLockManager(EnvironmentImpl envImpl) |
| Modifier and Type | Method and Description |
|---|---|
protected com.sleepycat.je.txn.LockAttemptResult |
attemptLock(java.lang.Long nodeId,
Locker locker,
LockType type,
boolean nonBlockingRequest) |
protected void |
dumpLockTable(LockStats stats)
Dump the lock table to the lock stats.
|
protected com.sleepycat.je.txn.Lock |
lookupLock(java.lang.Long nodeId) |
protected DeadlockException |
makeTimeoutMsg(java.lang.String lockOrTxn,
Locker locker,
long nodeId,
LockType type,
LockGrantType grantType,
com.sleepycat.je.txn.Lock useLock,
long timeout,
long start,
long now,
DatabaseImpl database)
Create a informative lock or txn timeout message.
|
protected java.util.Set<Locker> |
releaseAndFindNotifyTargets(long nodeId,
Locker locker)
Release the lock, and return the set of new owners to notify, if any.
|
protected boolean |
validateOwnership(java.lang.Long nodeId,
Locker locker,
LockType type,
boolean flushFromWaiters,
MemoryBudget mb) |
attemptLockInternal, demoteInternal, dump, dumpLockTableInternal, dumpToString, envConfigUpdate, getLockTableIndex, getLockTableIndex, getWriteOwnerLockerInternal, isLockedInternal, isOwnerInternal, isWaiterInternal, lock, lockStat, lookupLockInternal, makeTimeoutMsgInternal, nOwnersInternal, nWaitersInternal, release, releaseAndFindNotifyTargetsInternal, transferInternal, transferMultipleInternal, validateOwnershipInternalpublic SyncedLockManager(EnvironmentImpl envImpl) throws DatabaseException
DatabaseExceptionprotected com.sleepycat.je.txn.Lock lookupLock(java.lang.Long nodeId)
throws DatabaseException
lookupLock in class LockManagerDatabaseExceptionLockManager.attemptLock(java.lang.Long, com.sleepycat.je.txn.Locker, com.sleepycat.je.txn.LockType, boolean)protected com.sleepycat.je.txn.LockAttemptResult attemptLock(java.lang.Long nodeId,
Locker locker,
LockType type,
boolean nonBlockingRequest)
throws DatabaseException
attemptLock in class LockManagerDatabaseExceptionLockManager.attemptLock(java.lang.Long, com.sleepycat.je.txn.Locker, com.sleepycat.je.txn.LockType, boolean)protected DeadlockException makeTimeoutMsg(java.lang.String lockOrTxn, Locker locker, long nodeId, LockType type, LockGrantType grantType, com.sleepycat.je.txn.Lock useLock, long timeout, long start, long now, DatabaseImpl database)
LockManagerprotected java.util.Set<Locker> releaseAndFindNotifyTargets(long nodeId, Locker locker) throws DatabaseException
LockManagerreleaseAndFindNotifyTargets in class LockManagerDatabaseExceptionLockManager#releaseAndNotifyTargetsprotected boolean validateOwnership(java.lang.Long nodeId,
Locker locker,
LockType type,
boolean flushFromWaiters,
MemoryBudget mb)
throws DatabaseException
protected void dumpLockTable(LockStats stats) throws DatabaseException
LockManagerdumpLockTable in class LockManagerDatabaseExceptionLockManager.dumpLockTable(com.sleepycat.je.LockStats)