[jboss-jira] [JBoss JIRA] (AS7-6086) Deadlock in org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler

Krzysztof Noceń (JIRA) jira-events at lists.jboss.org
Wed Dec 5 09:40:21 EST 2012


Krzysztof Noceń created AS7-6086:
------------------------------------

             Summary: Deadlock in org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler
                 Key: AS7-6086
                 URL: https://issues.jboss.org/browse/AS7-6086
             Project: Application Server 7
          Issue Type: Bug
          Components: EJB, Remoting
    Affects Versions: 7.1.3.Final (EAP)
         Environment: Doesn't matter.
            Reporter: Krzysztof Noceń
            Assignee: jaikiran pai
             Fix For: No Release


Method: public void processMessage(ChannelAssociation, MessageInputStream) throws IOException;

This code:
---------
try {
    methodParams[i] = unmarshaller.readObject();
} catch (ClassNotFoundException cnfe) {
   /.../
   return;
}
---------
doesn't catch java.lang.IllegalArgumentException.
This causes the server hangs.

Example stacktrace: 
java.lang.IllegalArgumentException: No enum const org.example.ExampleEnum.ENUM_VALUE
 	at java.lang.Enum.valueOf(Enum.java:196)
 	at org.jboss.marshalling.river.RiverUnmarshaller.resolveEnumConstant(RiverUnmarshaller.java:1549)
 	at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1293)
 	at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
 	at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
 	at org.jboss.marshalling.AbstractObjectInput.readObject(AbstractObjectInput.java:37)
 	at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.processMessage(MethodInvocationMessageHandler.java:164)
 	at org.jboss.as.ejb3.remote.protocol.versionone.VersionOneProtocolChannelReceiver.handleMessage(VersionOneProtocolChannelReceiver.java:182)
 	at org.jboss.remoting3.remote.RemoteConnectionChannel$5.run(RemoteConnectionChannel.java:429)
 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 	at java.lang.Thread.run(Thread.java:662)

I caught java.lang.Exception. It helps.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the jboss-jira mailing list