Thank you for that... But all the this is showing me that the connection
between the two has been severed.
I'm a little more interested in what happens before that...
Maybe if this issue is consistently explicable then maybe run with a
log-level=fine.
--Udo
On 12/19/16 09:15, Thacker, Dharam wrote:
Yeah sure!
Client config looks simple. I have not enabled redundant copies. More
region is of type REPLICATE_PERSISTENT on server side. Server is just
initialized with –Xms = 20G and –Xmx = 30G with ConcMarkSweep GC along
with few more tuning parameters which works descent though!
*_Server logs:_*
[warn 2016/12/19 22:42:13.254 IST <ServerConnection on port 40404
Thread 2> tid=0x5b] Server connection from
[identity(XXXXX(11700:loner):63652:3b290e18,connection=2; port=63657]:
Unexpected _IOException_:
_java.net.SocketException_: Software caused connection abort: socket
write error
at java.net.SocketOutputStream.socketWrite0(_Native Method_)
at
java.net.SocketOutputStream.socketWrite(_SocketOutputStream.java:109_)
at java.net.SocketOutputStream.write(_SocketOutputStream.java:153_)
at
org.apache.geode.internal.cache.tier.sockets.Message.flushBuffer(_Message.java:649_)
at
org.apache.geode.internal.cache.tier.sockets.Message.sendBytes(_Message.java:627_)
at
org.apache.geode.internal.cache.tier.sockets.ChunkedMessage.sendChunk(_ChunkedMessage.java:314_)
at
org.apache.geode.internal.cache.tier.sockets.ChunkedMessage.sendChunk(_ChunkedMessage.java:322_)
at
org.apache.geode.internal.cache.tier.sockets.command.PutAll80.writeReply(_PutAll80.java:388_)
at
org.apache.geode.internal.cache.tier.sockets.command.PutAll80.cmdExecute(_PutAll80.java:339_)
at
org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(_BaseCommand.java:147_)
at
org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMsg(_ServerConnection.java:783_)
at
org.apache.geode.internal.cache.tier.sockets.ServerConnection.doOneMessage(_ServerConnection.java:913_)
at
org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(_ServerConnection.java:1180_)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(_ThreadPoolExecutor.java:1142_)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(_ThreadPoolExecutor.java:617_)
at
org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$1$1.run(_AcceptorImpl.java:546_)
at java.lang.Thread.run(_Thread.java:745_)
*_Client config:_*
<gfe:pool id="event-geode-pool" subscription-enabled="true"
server-group="EVENT_GRP">
<gfe:localtor...>
</gfe:pool>
<gfe:client-region id="Event"
cache-ref="event-cache"
pool-name="event-geode-pool"
shortcut="PROXY"
key-constraint="java.lang.String"
value-constraint="a.m.n.Event">
</gfe:client-region>
<gfe:cq-listener-container id="cqListenerContainer" cache="event-cache">
<gfe:listener ref="eventListener" query="SELECT * FROM /Event WHERE
status='PENDING'"/>
</gfe:cq-listener-container>
<bean id="eventListener" class="a.m.n.cqlisteners.MyEventListener"/>
Thanks,
Dharam
*From:*Udo Kohlmeyer [mailto:[email protected]]
*Sent:* Monday, December 19, 2016 10:26 PM
*To:* [email protected]
*Subject:* Re: Socket timeout after making regions persistent in async way
Hi there Dharam,
It is possible that persistence has an effect on the performance of
the system. But generally socket timeouts occur due to other issues
like GC or system load.
What is the server load around the time of the disconnection? Have you
enabled redundant copies for your cq?
Could you please provide your client configuration for this problem.
Maybe even a snippet of the server logs around the time of the client
disconnection. (a minute either side of the client disconnection is a
good start).
--Udo
On 12/19/16 05:22, Thacker, Dharam wrote:
Hi,
Has anyone faced below exceptions while cqlistener thread is
working on? It started coming once after I changes regions to be
persistent. Am I missing anything related to socket timeout?
<geode:disk-storeid=/"my_diskstore"/cache-ref=/"geodeCache"/
compaction-threshold=/"50"/
auto-compact=/"false"/
allow-force-compaction=/"true"/
max-oplog-size=/"512"/
queue-size=/"10000"/
time-interval=/"500"/
write-buffer-size=/"65536"/
disk-usage-warning-percentage=/"80"/
disk-usage-critical-percentage=/"98"/>
<geode:disk-dirlocation=/"mydata"/max-size=/"25600"//>
</geode:disk-store>
It tells me that server is unreachable but bouncing client
connects to server again but after some interval of activity with
server, again throws back below exception!
[warn 2016/12/19 18:43:22.608 IST <cqListenerContainer-1>
tid=0x6c] Pool unexpected socket timed out on client
connection=Pooled Connection to XXXX:40404:
Connection[XXXX:40404]@1743344121). Server unreachable: could not
connect after 1 attempts
[cqListenerContainer-1] ERROR
o.s.d.g.l.a.ContinuousQueryListenerAdapter Listener execution
failed...
_org.apache.geode.cache.client.ServerConnectivityException_: Pool
unexpected socket timed out on client connection=Pooled Connection
to XXXX:40404: Connection[XXXX:40404]@1743344121). Server
unreachable: could not connect after 1 attempts
at
org.apache.geode.cache.client.internal.OpExecutorImpl.handleException(_OpExecutorImpl.java:819_)
at
org.apache.geode.cache.client.internal.OpExecutorImpl.handleException(_OpExecutorImpl.java:603_)
at
org.apache.geode.cache.client.internal.OpExecutorImpl.execute(_OpExecutorImpl.java:173_)
at
org.apache.geode.cache.client.internal.OpExecutorImpl.execute(_OpExecutorImpl.java:110_)
at
org.apache.geode.cache.client.internal.PoolImpl.execute(_PoolImpl.java:697_)
at
org.apache.geode.cache.client.internal.PutAllOp.execute(_PutAllOp.java:110_)
at
org.apache.geode.cache.client.internal.ServerRegionProxy.putAll(_ServerRegionProxy.java:643_)
at
org.apache.geode.internal.cache.LocalRegion.basicPutAll(_LocalRegion.java:10166_)
at
org.apache.geode.internal.cache.LocalRegion.putAll(_LocalRegion.java:10101_)
at
org.apache.geode.internal.cache.LocalRegion.putAll(_LocalRegion.java:10113_)
at
org.springframework.data.gemfire.GemfireTemplate.putAll(_GemfireTemplate.java:201_)
... 25 common frames omitted
Thanks,
Dharam
This email is confidential and subject to important disclaimers
and conditions including on offers for the purchase or sale of
securities, accuracy and completeness of information, viruses,
confidentiality, legal privilege, and legal entity disclaimers,
available at http://www.jpmorgan.com/pages/disclosures/email
<http://www.jpmorgan.com/pages/disclosures/email>
This email is confidential and subject to important disclaimers and
conditions including on offers for the purchase or sale of securities,
accuracy and completeness of information, viruses, confidentiality,
legal privilege, and legal entity disclaimers, available at
http://www.jpmorgan.com/pages/disclosures/email