[
http://jira.jboss.com/jira/browse/JGRP-489?page=all ]
Vladimir Blagojevic resolved JGRP-489.
--------------------------------------
Resolution: Done
Resolved. I was able to reproduce this issue frequently while working on
http://jira.jboss.com/jira/browse/JGRP-158. The core of the problem was that SocketThread
at GossipRouter assigned to handled input stream from each RouterStub (client) would read
incorrect values from stream. One of the values was byte array size that needs to be
allocated to deserialize message from RouterStub. If the value of the size was enormous
such a byte array could not be allocated resulting in OOME.
So how did this happen to begin with? I noticed that RouterStub allowed multiple thread to
enter block of code that was writing a messsage to GossipRouter. When I refactored this
block of code to be atomic I have never encountered manifestation this problem again.
Out-of-memory with Tunnel and Isolating Nodes
---------------------------------------------
Key: JGRP-489
URL:
http://jira.jboss.com/jira/browse/JGRP-489
Project: JGroups
Issue Type: Task
Affects Versions: 2.4
Environment: Windows & Linux- JGroups2.5.0-beta-1 version, JDK1.5
Reporter: sampangi apparao
Assigned To: Vladimir Blagojevic
Fix For: 2.5
I am new bee to the JGroups. I am trying to run demo program Draw by using TUNNEL
protocol stack i.e tunnel.xml. I had two different subnets 172.x.x.x and 10.x.x.x and the
GossipRouter running on 172.x.x.x. In the begining the two Draw instance are identifying
each other and I can able to see drawing reflections on both nodes. After couple of
minutes the two instances were isolating and another issue was identified that if we run
multiple instances running on the same machine also reflecting same problem.
The following error was observed during execution time
And Gossip routger arguments...-bind_addr 172.16.2.49 -port 5556
336512 [TRACE] GossipRouter.mainLoop(): - REGISTER(DrawGroupDemo, 172.16.2.49:2238)
10.0.6.2:55214 closed connection; removing it from routing table
364342 [TRACE] GossipRouter.route(): - cannot find 10.0.6.2:33155 in the routing table,
routing table=
GROUP: 'DrawGroupDemo'
logical addr=172.16.2.49:2238 (172.16.2.49:2239), 7829 ms old
logical addr=10.0.6.2:33156 (10.0.6.2:52123), 9985 ms old
logical addr=172.16.2.49:2329 (172.16.2.49:2330), 4907 ms old
logical addr=172.16.2.49:2249 (172.16.2.49:2250), 3047 ms old
...
...
372373 [TRACE] GossipRouter.mainLoop(): - CONNECT(DrawGroupDemo, 10.0.6.2:33155)
372983 [TRACE] GossipRouter.mainLoop(): - REGISTER(DrawGroupDemo, 10.0.6.2:33155)
375280 [ERROR] Util$1.uncaughtException(): - uncaught exception in Thread[SocketThread
12,5,JGroups] (thread group=org.jgroups.util.Util$1[name=JGroups,maxpri=10] )
java.lang.OutOfMemoryError: Java heap space
375717 [TRACE] GossipRouter$SocketThread.run(): - ENGG-RAOS.us.packetmotion.com:2239
closed connection; removing it from routing table
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira