Class FailoverProxy
java.lang.Object
org.mariadb.jdbc.internal.failover.FailoverProxy
- All Implemented Interfaces:
InvocationHandler
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionFailoverProxy(Listener listener, ReentrantLock lock, LruTraceCache traceCache) Proxy constructor. -
Method Summary
Modifier and TypeMethodDescriptionbooleanhasToHandleFailover(SQLException exception) Check if this Sqlerror is a connection exception.Proxy that catch Protocol call, to permit to catch errors and handle failover when multiple hosts.voidLaunch reconnect implementation.
-
Field Details
-
lock
-
traceCache
-
-
Constructor Details
-
FailoverProxy
public FailoverProxy(Listener listener, ReentrantLock lock, LruTraceCache traceCache) throws SQLException Proxy constructor.- Parameters:
listener- failover implementation.lock- synchronisation locktraceCache- trace cache- Throws:
SQLException- if connection error occur
-
-
Method Details
-
invoke
Proxy that catch Protocol call, to permit to catch errors and handle failover when multiple hosts.- Specified by:
invokein interfaceInvocationHandler- Parameters:
proxy- the current protocolmethod- the called method on the protocolargs- methods parameters- Returns:
- protocol method result
- Throws:
Throwable- the method throwed error if not catch by failover
-
hasToHandleFailover
Check if this Sqlerror is a connection exception. if that's the case, must be handle by failovererror codes : 08000 : connection exception 08001 : SQL client unable to establish SQL connection 08002 : connection name in use 08003 : connection does not exist 08004 : SQL server rejected SQL connection 08006 : connection failure 08007 : transaction resolution unknown 70100 : connection was killed if error code is "1927"
- Parameters:
exception- the Exception- Returns:
- true if there has been a connection error that must be handled by failover
-
reconnect
Launch reconnect implementation.- Throws:
SQLException- exception
-
getListener
-