public class MastersReplicasProtocol extends MasterProtocol
Modifier and Type | Field and Description |
---|---|
protected boolean |
masterConnection |
private boolean |
mustBeMasterConnection |
activeStreamingResult, autoIncrementIncrement, CHECK_GALERA_STATE_QUERY, connected, database, eofDeprecated, exceptionFactory, explicitClosed, galeraAllowedStates, hasWarnings, lock, options, proxy, reader, readOnly, serverCapabilities, serverPrepareStatementCache, serverStatus, serverThreadId, socket, socketTimeout, traceCache, urlParser, writer
Constructor and Description |
---|
MastersReplicasProtocol(UrlParser url,
GlobalStateInfo globalInfo,
java.util.concurrent.locks.ReentrantLock lock,
LruTraceCache traceCache) |
Modifier and Type | Method and Description |
---|---|
protected static boolean |
foundMaster(MastersReplicasListener listener,
MastersReplicasProtocol protocol,
SearchFilter searchFilter) |
protected static boolean |
foundSecondary(MastersReplicasListener listener,
MastersReplicasProtocol protocol,
SearchFilter searchFilter) |
private static MastersReplicasProtocol |
getNewProtocol(FailoverProxy proxy,
GlobalStateInfo globalInfo,
UrlParser urlParser)
Get new instance of MastersReplicasProtocol.
|
static void |
loop(MastersReplicasListener listener,
GlobalStateInfo globalInfo,
java.util.List<HostAddress> addresses,
SearchFilter searchFilter)
loop until found the failed connection.
|
boolean |
mustBeMasterConnection() |
private static void |
resetHostList(MastersReplicasListener listener,
java.util.Deque<HostAddress> loopAddresses)
Reinitialize loopAddresses with all servers in randomize order.
|
void |
setMustBeMasterConnection(boolean mustBeMasterConnection) |
loop
cancelCurrentQuery, closeExplicit, executeBatchClient, executeBatchServer, executeBatchStmt, executePreparedQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, forceReleasePrepareStatement, forceReleaseWaitingPrepareStatement, getAutocommit, getAutoIncrementIncrement, getCatalog, getMaxRows, getResult, getTimeout, getTransactionIsolationLevel, handleIoException, interrupt, inTransaction, isInterrupted, isValid, ping, prepare, prolog, prologProxy, putInCache, releasePrepareStatement, reset, resetDatabase, resetStateAfterFailover, rollback, setActiveFutureTask, setCatalog, setLocalInfileInputStream, setMaxRows, setReadonly, setTimeout, setTransactionIsolation, stopIfInterrupted
abort, changeSocketSoTimeout, changeSocketTcpNoDelay, checkIfMaster, close, connect, connectWithoutProxy, destroySocket, getActiveStreamingResult, getDatabase, getHost, getHostAddress, getLock, getMajorServerVersion, getMinorServerVersion, getOptions, getPinGlobalTxToPhysicalConnection, getPort, getProxy, getReader, getReadonly, getServerThreadId, getServerVersion, getSocket, getTimeZone, getTraces, getUrlParser, getUsername, hasMoreResults, hasWarnings, isClosed, isConnected, isEofDeprecated, isExplicitClosed, isMasterConnection, isServerMariaDb, noBackslashEscapes, prepareStatementCache, readEofPacket, readPipelineCheckMaster, removeActiveStreamingResult, removeHasMoreResults, sessionStateAware, setActiveStreamingResult, setHasWarnings, setHostAddress, setHostFailedWithoutProxy, setProxy, setServerStatus, shouldReconnectWithoutProxy, skip, skipEofPacket, versionGreaterOrEqual
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
abort, changeSocketSoTimeout, changeSocketTcpNoDelay, checkIfMaster, close, connect, connectWithoutProxy, getActiveStreamingResult, getDatabase, getHost, getHostAddress, getLock, getMajorServerVersion, getMinorServerVersion, getOptions, getPinGlobalTxToPhysicalConnection, getPort, getProxy, getReader, getReadonly, getServerThreadId, getServerVersion, getSocket, getTimeZone, getTraces, getUrlParser, getUsername, hasMoreResults, hasWarnings, isClosed, isConnected, isEofDeprecated, isExplicitClosed, isMasterConnection, isServerMariaDb, noBackslashEscapes, prepareStatementCache, readEofPacket, removeActiveStreamingResult, removeHasMoreResults, sessionStateAware, setActiveStreamingResult, setHasWarnings, setHostAddress, setHostFailedWithoutProxy, setProxy, setServerStatus, shouldReconnectWithoutProxy, skip, skipEofPacket, versionGreaterOrEqual
protected boolean masterConnection
private boolean mustBeMasterConnection
public MastersReplicasProtocol(UrlParser url, GlobalStateInfo globalInfo, java.util.concurrent.locks.ReentrantLock lock, LruTraceCache traceCache)
public static void loop(MastersReplicasListener listener, GlobalStateInfo globalInfo, java.util.List<HostAddress> addresses, SearchFilter searchFilter) throws java.sql.SQLException
listener
- current failoverglobalInfo
- server global variables informationaddresses
- list of HostAddress to loopsearchFilter
- search parameterjava.sql.SQLException
- if not foundprivate static void resetHostList(MastersReplicasListener listener, java.util.Deque<HostAddress> loopAddresses)
listener
- current listenerloopAddresses
- the list to reinitializeprotected static boolean foundMaster(MastersReplicasListener listener, MastersReplicasProtocol protocol, SearchFilter searchFilter)
protected static boolean foundSecondary(MastersReplicasListener listener, MastersReplicasProtocol protocol, SearchFilter searchFilter) throws java.sql.SQLException
java.sql.SQLException
private static MastersReplicasProtocol getNewProtocol(FailoverProxy proxy, GlobalStateInfo globalInfo, UrlParser urlParser)
proxy
- proxyurlParser
- connection string Object.public boolean mustBeMasterConnection()
mustBeMasterConnection
in interface Protocol
mustBeMasterConnection
in class AbstractConnectProtocol
public void setMustBeMasterConnection(boolean mustBeMasterConnection)