public class LeaderSessionTracker extends UpgradeableSessionTracker
SessionTracker.Session, SessionTracker.SessionExpirerlocalSessionsEnabled, localSessionTracker| Constructor and Description |
|---|
LeaderSessionTracker(SessionTracker.SessionExpirer expirer,
ConcurrentMap<Long,Integer> sessionsWithTimeouts,
int tickTime,
long id,
boolean localSessionsEnabled,
ZooKeeperServerListener listener) |
| Modifier and Type | Method and Description |
|---|---|
void |
checkGlobalSession(long sessionId,
Object owner)
Strictly check that a given session is a global session or not
|
void |
checkSession(long sessionId,
Object owner)
Checks whether the SessionTracker is aware of this session, the session
is still active, and the owner matches.
|
boolean |
commitSession(long sessionId,
int sessionTimeout)
Synchronized on this to avoid race condition of adding a local session
after committed global session, which may cause the same session being
tracked on this server and leader.
|
long |
createSession(int sessionTimeout) |
void |
dumpSessions(PrintWriter pwriter)
Text dump of session information, suitable for debugging.
|
static long |
getServerIdFromSessionId(long sessionId) |
Map<Long,Set<Long>> |
getSessionExpiryMap()
Returns a mapping of time to session IDs that expire at that time.
|
boolean |
isGlobalSession(long sessionId) |
void |
removeSession(long sessionId) |
void |
setOwner(long sessionId,
Object owner) |
void |
setSessionClosing(long sessionId)
Mark that the session is in the process of closing.
|
void |
shutdown() |
void |
start() |
boolean |
touchSession(long sessionId,
int sessionTimeout) |
boolean |
trackSession(long sessionId,
int sessionTimeout)
Track the session expire, not add to ZkDb.
|
createLocalSessionTracker, finishedUpgrading, getLocalSessionCount, isLocalSession, isLocalSessionsEnabled, isTrackingSession, isUpgradingSession, removeLocalSession, upgradeSessionpublic LeaderSessionTracker(SessionTracker.SessionExpirer expirer, ConcurrentMap<Long,Integer> sessionsWithTimeouts, int tickTime, long id, boolean localSessionsEnabled, ZooKeeperServerListener listener)
public void removeSession(long sessionId)
public void start()
start in class UpgradeableSessionTrackerpublic void shutdown()
public boolean isGlobalSession(long sessionId)
isGlobalSession in class UpgradeableSessionTrackerpublic boolean trackSession(long sessionId,
int sessionTimeout)
SessionTrackersessionId - sessionIdsessionTimeout - sessionTimeoutpublic boolean commitSession(long sessionId,
int sessionTimeout)
sessionId - sessionIdsessionTimeout - sessionTimeoutpublic boolean touchSession(long sessionId,
int sessionTimeout)
public long createSession(int sessionTimeout)
public static long getServerIdFromSessionId(long sessionId)
public void checkSession(long sessionId,
Object owner)
throws KeeperException.SessionExpiredException,
KeeperException.SessionMovedException,
KeeperException.UnknownSessionException
SessionTrackerpublic void checkGlobalSession(long sessionId,
Object owner)
throws KeeperException.SessionExpiredException,
KeeperException.SessionMovedException
SessionTrackercheckGlobalSession in interface SessionTrackercheckGlobalSession in class UpgradeableSessionTrackerKeeperException.SessionExpiredExceptionKeeperException.SessionMovedExceptionpublic void setOwner(long sessionId,
Object owner)
throws KeeperException.SessionExpiredException
public void dumpSessions(PrintWriter pwriter)
SessionTrackerpwriter - the output writerpublic void setSessionClosing(long sessionId)
SessionTrackerpublic Map<Long,Set<Long>> getSessionExpiryMap()
SessionTrackerCopyright © 2008–2021 The Apache Software Foundation. All rights reserved.