Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 58895 invoked from network); 22 Feb 2007 11:33:27 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 22 Feb 2007 11:33:27 -0000 Received: (qmail 43083 invoked by uid 500); 22 Feb 2007 11:33:35 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 43059 invoked by uid 500); 22 Feb 2007 11:33:35 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 43049 invoked by uid 99); 22 Feb 2007 11:33:35 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 22 Feb 2007 03:33:35 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 22 Feb 2007 03:33:25 -0800 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id BF2007141B8 for ; Thu, 22 Feb 2007 03:33:05 -0800 (PST) Message-ID: <4677166.1172143985780.JavaMail.jira@brutus> Date: Thu, 22 Feb 2007 03:33:05 -0800 (PST) From: "Igor V. Stolyarov (JIRA)" To: commits@harmony.apache.org Subject: [jira] Created: (HARMONY-3229) [classlib][luni]Synchonization issue in java.io.ObjectStreamClass.fields() MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [classlib][luni]Synchonization issue in java.io.ObjectStreamClass.fields() -------------------------------------------------------------------------- Key: HARMONY-3229 URL: https://issues.apache.org/jira/browse/HARMONY-3229 Project: Harmony Issue Type: Bug Components: App-Oriented Bug Reports Reporter: Igor V. Stolyarov Attachments: ObjectStreamClass.patch This issue is appearing when many clients are connecting to JBoss AS. Stack trace is below: 16:34:33,576 INFO [STDOUT] java.lang.NullPointerException: at java.io.ObjectStreamClass.buildFieldDescriptors(ObjectStreamClass.java:344) at java.io.ObjectStreamClass.fields(ObjectStreamClass.java) at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java) at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:310) at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java) at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1296) at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1672) at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1947) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1783) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1747) at java.util.HashMap.writeObject(HashMap.java:706) at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java) at java.lang.reflect.Method.invoke(Method.java:381) at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1315) at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1672) at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1947) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1783) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java) at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:1233) at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:310) at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java) at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1672) at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1947) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1783) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1747) at org.jboss.invocation.MarshalledValue.(MarshalledValue.java:69) at org.jboss.invocation.MarshalledValueEX.(MarshalledValueEX.java) at org.jboss.invocation.unified.interfaces.JavaSerializationManager.createdMarshalledValue(JavaSerializationManager.java:105) at org.jboss.invocation.InvokerInterceptor.createMarshalledValueForCallByValue(InvokerInterceptor.java:279) at org.jboss.invocation.InvokerInterceptor.createInvocationCopy(InvokerInterceptor.java:327) at org.jboss.invocation.InvokerInterceptor.invokeLocalMarshalled(InvokerInterceptor.java:286) at org.jboss.invocation.MarshallingInvokerInterceptor.invoke(MarshallingInvokerInterceptor.java:60) at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61) at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70) at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:112) at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:95) at $Proxy138.getCustomerInfo(Unknown Source) at org.spec.jappserver.servlet.helper.SpecAction.getCustomerData(SpecAction.java:513) at org.spec.jappserver.servlet.helper.SpecServletAction.doHome(SpecServletAction.java:201) at org.spec.jappserver.servlet.helper.SpecServletAction.doLogin(SpecServletAction.java:267) at org.spec.jappserver.servlet.SpecAppServlet.performTask(SpecAppServlet.java:144) at org.spec.jappserver.servlet.SpecAppServlet.doGet(SpecAppServlet.java:94) at javax.servlet.http.HttpServlet.service(HttpServlet.java:694) at javax.servlet.http.HttpServlet.service(HttpServlet.java:808) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:171) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:90) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:171) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:662) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:109) at java.lang.Thread.run(Thread.java:660) Investigation of this issue shows what method buildFieldDescriptors is calling from two places. First - from synchronized method addToCache and from non-synchronized method fields. This issue is eliminating by adding synchronized block to the fields method. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.