Class MastersReplicasProtocol
java.lang.Object
org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol
org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol
org.mariadb.jdbc.internal.protocol.MasterProtocol
org.mariadb.jdbc.internal.protocol.MastersReplicasProtocol
- All Implemented Interfaces:
Closeable,AutoCloseable,Protocol
- Direct Known Subclasses:
AuroraProtocol
-
Field Summary
FieldsFields inherited from class org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol
activeStreamingResult, autoIncrementIncrement, CHECK_GALERA_STATE_QUERY, connected, database, eofDeprecated, exceptionFactory, explicitClosed, galeraAllowedStates, hasWarnings, lock, maxscaleVersion, options, proxy, reader, readOnly, serverCapabilities, serverPrepareStatementCache, serverStatus, serverThreadId, socket, socketTimeout, traceCache, urlParser, writer -
Constructor Summary
ConstructorsConstructorDescriptionMastersReplicasProtocol(UrlParser url, GlobalStateInfo globalInfo, ReentrantLock lock, LruTraceCache traceCache) -
Method Summary
Modifier and TypeMethodDescriptionprotected static booleanfoundMaster(MastersReplicasListener listener, MastersReplicasProtocol protocol, SearchFilter searchFilter) protected static booleanfoundSecondary(MastersReplicasListener listener, MastersReplicasProtocol protocol, SearchFilter searchFilter) static voidloop(MastersReplicasListener listener, GlobalStateInfo globalInfo, List<HostAddress> addresses, SearchFilter searchFilter) loop until found the failed connection.booleanvoidsetMustBeMasterConnection(boolean mustBeMasterConnection) Methods inherited from class org.mariadb.jdbc.internal.protocol.MasterProtocol
loopMethods inherited from class org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol
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, stopIfInterruptedMethods inherited from class org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol
abort, changeSocketSoTimeout, changeSocketTcpNoDelay, checkIfMaster, close, connect, connectWithoutProxy, destroySocket, getActiveStreamingResult, getDatabase, getHost, getHostAddress, getLock, getMajorServerVersion, getMaxscaleVersion, getMinorServerVersion, getOptions, getPatchServerVersion, getPinGlobalTxToPhysicalConnection, getPort, getProxy, getReader, getReadonly, getServerThreadId, getServerVersion, getSocket, getSocketIp, 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, versionGreaterOrEqualMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.mariadb.jdbc.internal.protocol.Protocol
abort, changeSocketSoTimeout, changeSocketTcpNoDelay, checkIfMaster, close, connect, connectWithoutProxy, getActiveStreamingResult, getDatabase, getHost, getHostAddress, getLock, getMajorServerVersion, getMaxscaleVersion, getMinorServerVersion, getOptions, getPatchServerVersion, 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
-
Field Details
-
masterConnection
protected boolean masterConnection
-
-
Constructor Details
-
MastersReplicasProtocol
public MastersReplicasProtocol(UrlParser url, GlobalStateInfo globalInfo, ReentrantLock lock, LruTraceCache traceCache)
-
-
Method Details
-
loop
public static void loop(MastersReplicasListener listener, GlobalStateInfo globalInfo, List<HostAddress> addresses, SearchFilter searchFilter) throws SQLException loop until found the failed connection.- Parameters:
listener- current failoverglobalInfo- server global variables informationaddresses- list of HostAddress to loopsearchFilter- search parameter- Throws:
SQLException- if not found
-
foundMaster
protected static boolean foundMaster(MastersReplicasListener listener, MastersReplicasProtocol protocol, SearchFilter searchFilter) -
foundSecondary
protected static boolean foundSecondary(MastersReplicasListener listener, MastersReplicasProtocol protocol, SearchFilter searchFilter) throws SQLException - Throws:
SQLException
-
mustBeMasterConnection
public boolean mustBeMasterConnection()- Specified by:
mustBeMasterConnectionin interfaceProtocol- Overrides:
mustBeMasterConnectionin classAbstractConnectProtocol
-
setMustBeMasterConnection
public void setMustBeMasterConnection(boolean mustBeMasterConnection)
-