Hi Vahram,

Are you sure your old client process is gone when you try to connect the new one?  It looks like the server should be doing a liveness check on the old "proxy" for the client and disallows the new connection if the old one is still around and its socket is still connected to the old client process.

The work for JIRA ticket GEODE-1183 introduced the server-side behavior you're seeing.

https://issues.apache.org/jira/browse/GEODE-1183


On 10/22/18 8:09 AM, Vahram Aharonyan wrote:

Hi All,

We are trying to move from Geode 1.1.0 to 1.6.0 and examining problems with registering interest on regions after client restart. Please note that issue occurs only if server nodes and locator of the cluster are powered on client is been restarted. On the first boot of servers, client is successful in registering interest without any problem.

Snippet from client log:

[warning 2018/10/22 19:01:21.299 AMT Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <queueTimer-ControllerPool> tid=0x34] Cache Client Updater Thread  on localhost(Server-b90ea8f2-8864-4c19-b4fb-b93f8499c674:22375)<ec><v3>:10002 port 10000 (10.27.72.245:10000): Caught following exception while attempting to create a server-to-client communication socket and will exit: org.apache.geode.cache.client.ServerRefusedConnectionException: <null inet_addr hostname><ec>:10000 refused connection: A previous connection attempt from this client is still being processed: identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1

[warning 2018/10/22 19:01:21.520 AMT Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <queueTimer-ControllerPool> tid=0x34] Cache Client Updater Thread  on localhost(Server-17488aac-6fbd-43d1-8f91-c6d06c3947c0:30157)<ec><v1>:10002 port 10000 (10.27.72.247:10000): Caught following exception while attempting to create a server-to-client communication socket and will exit: org.apache.geode.cache.client.ServerRefusedConnectionException: <null inet_addr hostname><ec>:10000 refused connection: A previous connection attempt from this client is still being processed: identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1

[warning 2018/10/22 19:01:41.134 AMT Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <queueTimer-ControllerPool> tid=0x34] Cache Client Updater Thread  on localhost(Server-0145f530-79a8-449e-9ca9-e0487cfe2934:31321)<ec><v2>:10002 port 10000 (10.27.72.252:10000): Caught following exception while attempting to create a server-to-client communication socket and will exit: org.apache.geode.cache.client.ServerRefusedConnectionException: <null inet_addr hostname><ec>:10000 refused connection: A previous connection attempt from this client is still being processed: identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1

[warning 2018/10/22 19:01:41.350 AMT Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <queueTimer-ControllerPool> tid=0x34] Cache Client Updater Thread  on localhost(Server-b90ea8f2-8864-4c19-b4fb-b93f8499c674:22375)<ec><v3>:10002 port 10000 (10.27.72.245:10000): Caught following exception while attempting to create a server-to-client communication socket and will exit: org.apache.geode.cache.client.ServerRefusedConnectionException: <null inet_addr hostname><ec>:10000 refused connection: A previous connection attempt from this client is still being processed: identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1

And on the server side:

[warning 2018/10/22 19:04:41.992 AMT Server-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <ServerConnection on port 10000 Thread 80> tid=0x5e0] Server connection from [identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1; port=50484]: Unexpected IOException:

java.net.SocketException: Socket Closed

        at java.net.AbstractPlainSocketImpl.setOption(AbstractPlainSocketImpl.java:212)

        at java.net.Socket.setSoTimeout(Socket.java:1141)

        at sun.security.ssl.BaseSSLSocketImpl.setSoTimeout(BaseSSLSocketImpl.java:631)

        at sun.security.ssl.SSLSocketImpl.setSoTimeout(SSLSocketImpl.java:2565)

        at org.apache.geode.internal.cache.tier.sockets.Message.readHeaderAndBody(Message.java:661)

        at org.apache.geode.internal.cache.tier.sockets.Message.receiveWithHeaderReadTimeout(Message.java:1125)

        at org.apache.geode.internal.cache.tier.sockets.Message.receive(Message.java:1136)

        at org.apache.geode.internal.cache.tier.sockets.Message.receive(Message.java:1145)

        at org.apache.geode.internal.cache.tier.sockets.BaseCommand.readRequest(BaseCommand.java:851)

        at org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMsg(ServerConnection.java:792)

        at org.apache.geode.internal.cache.tier.sockets.OriginalServerConnection.doOneMessage(OriginalServerConnection.java:85)

        at org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1248)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

        at org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$4$1.run(AcceptorImpl.java:644)

        at java.lang.Thread.run(Thread.java:748)

[warning 2018/10/22 19:04:41.992 AMT Server-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <ServerConnection on port 10000 Thread 80> tid=0x5e0] ClientHealthMonitor: Unregistering client with member id identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1 due to: Socket Closed

[info 2018/10/22 19:05:02.034 AMT Server-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <Client Queue Initialization  Thread 1> tid=0x4b8] :Cache server: Initializing primary server-to-client communication socket: 62ca4c8d[TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256: Socket[addr=/10.27.72.247,port=50516,localport=10000]]

[warning 2018/10/22 19:05:02.034 AMT Server-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <Client Queue Initialization  Thread 1> tid=0x4b8] A previous connection attempt from this client is still being processed: identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1

[warning 2018/10/22 19:05:02.034 AMT Server-17488aac-6fbd-43d1-8f91-c6d06c3947c0 <Client Queue Initialization  Thread 1> tid=0x4b8] CacheClientNotifier: Unsuccessfully registered client with identifier identity(localhost(Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0:21127:loner):57327:6cb13d9c:Client-17488aac-6fbd-43d1-8f91-c6d06c3947c0,connection=1 and response code 60

Could it be we are missing something on PoolCreation or client/server configuration for Geode 1.6.0? Things were working fine with 1.1.0 version.

Thanks,

Vahram.


Reply via email to