public abstract class AbstractMastersSlavesListener extends AbstractMastersListener
| Modifier and Type | Field and Description |
|---|---|
private static Logger |
logger |
private java.util.concurrent.atomic.AtomicBoolean |
secondaryHostFail |
private long |
secondaryHostFailNanos |
protected java.util.concurrent.atomic.AtomicReference<Protocol> |
waitNewMasterProtocol |
protected java.util.concurrent.atomic.AtomicReference<Protocol> |
waitNewSecondaryProtocol |
currentConnectionAttempts, currentProtocol, currentReadOnlyAsked, explicitClosed, globalInfo, lastQueryNanos, lastRetry, proxy, urlParser| Modifier | Constructor and Description |
|---|---|
protected |
AbstractMastersSlavesListener(UrlParser urlParser,
GlobalStateInfo globalInfo) |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
foundActiveSecondary(Protocol newSecondaryProtocol) |
SearchFilter |
getFilterForFailedHost() |
long |
getSecondaryHostFailNanos() |
HandleErrorResult |
handleFailover(java.sql.SQLException qe,
java.lang.reflect.Method method,
java.lang.Object[] args,
Protocol protocol)
Handle failover on master or slave connection.
|
boolean |
hasHostFail() |
boolean |
isMasterHostFailReconnect() |
boolean |
isSecondaryHostFail() |
boolean |
isSecondaryHostFailReconnect() |
protected void |
resetMasterFailoverData() |
protected void |
resetSecondaryFailoverData() |
abstract HandleErrorResult |
secondaryFail(java.lang.reflect.Method method,
java.lang.Object[] args,
boolean killCmd) |
boolean |
setSecondaryHostFail()
Set slave connection lost variables.
|
abortConnection, addToBlacklist, canRetryFailLoop, checkMasterStatus, clearBlacklist, closeConnection, getBlacklistKeys, getCatalog, getCurrentProtocol, getLastQueryNanos, getMajorServerVersion, getMasterHostFailNanos, getProxy, getRetriesAllDown, getTimeout, getUrlParser, handleFailLoop, initializeConnection, invoke, invoke, isAutoReconnect, isClosed, isExplicitClosed, isMasterConnection, isMasterHostFail, isQueryRelaunchable, isReadOnly, isValid, noBackslashEscapes, pingMasterProtocol, preAutoReconnect, preClose, preExecute, primaryFail, prolog, reconnect, reconnectFailedConnection, relaunchOperation, removeFromBlacklist, removeListenerFromSchedulers, resetOldsBlackListHosts, sessionStateAware, setMasterHostFail, setProxy, setSessionReadOnly, switchReadOnlyConnection, syncConnection, throwFailoverMessage, versionGreaterOrEqualclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitfoundActiveMaster, getServerThreadId, isMasterConnected, preAbort, rePrepareOnSlave, resetprivate static final Logger logger
protected final java.util.concurrent.atomic.AtomicReference<Protocol> waitNewSecondaryProtocol
protected final java.util.concurrent.atomic.AtomicReference<Protocol> waitNewMasterProtocol
private volatile long secondaryHostFailNanos
private final java.util.concurrent.atomic.AtomicBoolean secondaryHostFail
protected AbstractMastersSlavesListener(UrlParser urlParser, GlobalStateInfo globalInfo)
public HandleErrorResult handleFailover(java.sql.SQLException qe, java.lang.reflect.Method method, java.lang.Object[] args, Protocol protocol) throws java.lang.Throwable
handleFailover in interface ListenerhandleFailover in class AbstractMastersListenermethod - called methodargs - methods parametersprotocol - current protocoljava.lang.Throwable - if method with parameters doesn't existprotected void resetMasterFailoverData()
resetMasterFailoverData in class AbstractMastersListenerprotected void resetSecondaryFailoverData()
public long getSecondaryHostFailNanos()
public boolean setSecondaryHostFail()
public boolean isSecondaryHostFail()
public boolean isSecondaryHostFailReconnect()
public boolean isMasterHostFailReconnect()
public boolean hasHostFail()
hasHostFail in interface ListenerhasHostFail in class AbstractMastersListenerpublic SearchFilter getFilterForFailedHost()
getFilterForFailedHost in interface ListenergetFilterForFailedHost in class AbstractMastersListenerpublic abstract HandleErrorResult secondaryFail(java.lang.reflect.Method method, java.lang.Object[] args, boolean killCmd) throws java.lang.Throwable
java.lang.Throwablepublic abstract void foundActiveSecondary(Protocol newSecondaryProtocol) throws java.sql.SQLException
java.sql.SQLException