[jboss-jira] [JBoss JIRA] Commented: (JBREM-553) deadlock when disconnecting
Tom Elrod (JIRA)
jira-events at jboss.com
Fri Jul 21 23:30:11 EDT 2006
[ http://jira.jboss.com/jira/browse/JBREM-553?page=comments#action_12339897 ]
Tom Elrod commented on JBREM-553:
----------------------------------
Just ran remoting testsuite to see if it would pick up this deadlock and did not see. Also not seeing it in the test case created for it:
org.jboss.test.remoting.detection.multicast.deadlock.DeadlockTestCase
> deadlock when disconnecting
> ---------------------------
>
> Key: JBREM-553
> URL: http://jira.jboss.com/jira/browse/JBREM-553
> Project: JBoss Remoting
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 2.0.0.Beta2 (Boon)
> Reporter: John Mazzitelli
> Assigned To: Tom Elrod
> Fix For: 2.0.0.CR1 (Boon)
>
>
> I am seeing a deadlock in my test suite. It happens everytime. I haven't finished looking at all the data, but I'm submitting this JIRA now because I only started seeing this after building a new remoting jar from HEAD and installing it. I do not believe any changes that I did caused this (I haven't changed much if any code in my own stuff - though I will test this by switching out to an older remoting jar to see what happens).
> Here's the two threads that deadlocked on java.util.LinkedList<E> (id=2271:
> Thread [Thread-3562] (Suspended)
> owns: java.io.BufferedInputStream (id=2299)
> owns: java.util.LinkedList<E> (id=2271)
> java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) line: not available [native method]
> java.net.SocketInputStream.read(byte[], int, int) line: 129
> java.io.BufferedInputStream.fill() line: 218
> java.io.BufferedInputStream.read1(byte[], int, int) line: 256
> java.io.BufferedInputStream.read(byte[], int, int) line: 313
> java.io.ObjectInputStream$PeekInputStream.read(byte[], int, int) line: 2217
> java.io.ObjectInputStream$PeekInputStream.readFully(byte[], int, int) line: 2230
> java.io.ObjectInputStream$BlockDataInputStream.readShort() line: 2698
> org.jboss.remoting.loading.ObjectInputStreamWithClassLoader(java.io.ObjectInputStream).readStreamHeader() line: 750
> org.jboss.remoting.loading.ObjectInputStreamWithClassLoader(java.io.ObjectInputStream).<init>(java.io.InputStream) line: 268
> org.jboss.remoting.loading.ObjectInputStreamWithClassLoader.<init>(java.io.InputStream, java.lang.ClassLoader) line: 73
> org.jboss.remoting.serialization.impl.java.JavaSerializationManager.createInput(java.io.InputStream, java.lang.ClassLoader) line: 52
> org.jboss.remoting.transport.socket.ClientSocketWrapper.createInputStream(java.lang.String, java.net.Socket) line: 83
> org.jboss.remoting.transport.socket.ClientSocketWrapper.createStreams(java.net.Socket, java.util.Map) line: 76
> org.jboss.remoting.transport.socket.ClientSocketWrapper.<init>(java.net.Socket, java.util.Map, java.lang.Integer) line: 54
> sun.reflect.GeneratedConstructorAccessor31.newInstance(java.lang.Object[]) line: not available
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(java.lang.Object[]) line: 27
> java.lang.reflect.Constructor<T>.newInstance(java.lang.Object...) line: 494
> org.jboss.remoting.transport.socket.SocketClientInvoker.createClientSocket(java.net.Socket, int, java.util.Map) line: 158
> org.jboss.remoting.transport.socket.SocketClientInvoker(org.jboss.remoting.transport.socket.MicroSocketClientInvoker).getConnection() line: 666
> org.jboss.remoting.transport.socket.SocketClientInvoker(org.jboss.remoting.transport.socket.MicroSocketClientInvoker).transport(java.lang.String, java.lang.Object, java.util.Map, org.jboss.remoting.marshal.Marshaller, org.jboss.remoting.marshal.UnMarshaller) line: 292
> org.jboss.remoting.transport.socket.SocketClientInvoker(org.jboss.remoting.MicroRemoteClientInvoker).invoke(org.jboss.remoting.InvocationRequest) line: 116
> org.jboss.remoting.ConnectionValidator$2.run() line: 170
> java.lang.Thread.run() line: 595
> Thread [main] (Suspended)
> owns: java.util.HashMap<K,V> (id=2272)
> owns: org.jboss.remoting.transport.sslsocket.SSLSocketClientInvoker (id=2273)
> owns: java.lang.Object (id=2274)
> owns: java.lang.Object (id=2275)
> owns: boolean[] (id=2276)
> waited by: Thread [JON Agent Main] (Running)
> waited by: Thread [JON Agent Main] (Running)
> waiting for: java.util.LinkedList<E> (id=2271)
> owned by: Thread [Thread-3562] (Running)
> org.jboss.remoting.transport.socket.MicroSocketClientInvoker.clearPool(org.jboss.remoting.transport.socket.ServerAddress) line: 509
> org.jboss.remoting.transport.socket.MicroSocketClientInvoker.clearPools() line: 541
> org.jboss.remoting.transport.sslsocket.SSLSocketClientInvoker(org.jboss.remoting.transport.socket.MicroSocketClientInvoker).handleDisconnect() line: 253
> org.jboss.remoting.transport.sslsocket.SSLSocketClientInvoker(org.jboss.remoting.MicroRemoteClientInvoker).disconnect() line: 287
> org.jboss.remoting.InvokerRegistry.destroyClientInvoker(org.jboss.remoting.InvokerLocator, java.util.Map) line: 225
> org.jboss.remoting.Client.disconnect() line: 536
> org.jboss.on.communications.command.client.JBossRemotingRemoteCommunicator.disconnect() line: 406
> org.jboss.on.communications.command.client.ClientCommandSender.stopSending(boolean) line: 725
> org.jboss.on.agent.AgentMain.shutdown() line: 436
> org.jboss.on.agent.AgentCommTest.tearDown() line: 146
> sun.reflect.GeneratedMethodAccessor26.invoke(java.lang.Object, java.lang.Object[]) line: not available
> sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) line: 25
> java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object...) line: 585
> org.testng.internal.MethodHelper.invokeMethod(java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) line: 552
> org.testng.internal.Invoker.invokeConfigurationMethod(java.lang.Object[], org.testng.ITestNGMethod, java.lang.Object[], boolean, org.testng.ITestResult) line: 318
> org.testng.internal.Invoker.invokeConfigurations(org.testng.IClass, org.testng.ITestNGMethod[], org.testng.xml.XmlSuite, java.util.Map<java.lang.String,java.lang.String>, java.lang.Object) line: 152
> org.testng.internal.Invoker.invokeMethod(java.lang.Object[], org.testng.ITestNGMethod, java.lang.Object[], org.testng.xml.XmlSuite, java.util.Map<java.lang.String,java.lang.String>, org.testng.ITestClass, org.testng.ITestNGMethod[], org.testng.ITestNGMethod[], org.testng.internal.ConfigurationGroupMethods) line: 483
> org.testng.internal.Invoker.invokeTestMethods(org.testng.ITestNGMethod, org.testng.xml.XmlSuite, java.util.Map<java.lang.String,java.lang.String>, org.testng.ITestNGMethod[], int, org.testng.internal.ConfigurationGroupMethods) line: 778
> org.testng.internal.TestMethodWorker.run() line: 105
> org.testng.TestRunner.privateRun(org.testng.xml.XmlTest) line: 682
> org.testng.TestRunner.run() line: 566
> org.testng.SuiteRunner.privateRun() line: 220
> org.testng.SuiteRunner.run() line: 146
> org.testng.TestNG.createAndRunSuiteRunners(org.testng.xml.XmlSuite) line: 713
> org.testng.TestNG.runSuitesLocally() line: 676
> org.apache.maven.surefire.testng.TestNGExecutor.executeTestNG(org.apache.maven.surefire.suite.SurefireTestSuite, java.lang.String, org.testng.xml.XmlSuite, org.apache.maven.surefire.report.ReporterManager) line: 64
> org.apache.maven.surefire.testng.TestNGXmlTestSuite.execute(org.apache.maven.surefire.report.ReporterManager, java.lang.ClassLoader) line: 75
> org.apache.maven.surefire.Surefire.run(java.util.List, java.util.List, java.lang.ClassLoader, java.lang.ClassLoader) line: 129
> sun.reflect.NativeMethodAccessorImpl.invoke0(java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) line: not available [native method]
> sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) line: 39
> sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) line: 25
> java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object...) line: 585
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess() line: 225
> org.apache.maven.surefire.booter.SurefireBooter.main(java.lang.String[]) line: 747
--
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
More information about the jboss-jira
mailing list