Bugs item #1057118, was opened at 2004-10-29 16:59 Message generated for change (Comment added) made by starksm You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=376685&aid=1057118&group_id=22866
Category: JBossCMP Group: v3.2 Status: Open Resolution: None Priority: 5 Submitted By: Ivan Parra (ioparra) Assigned to: Alexey Loubyansky (loubyansky) Summary: NPE on TableCache while promoting row Initial Comment: JBoss3_2_6 with Cache Invalidition JDK1.4 The system was under heavy load both from normal means and cache invalidation. Race condition??? java.lang.NullPointerException at org.jboss.ejb.plugins.cmp.jdbc2.schema.TableCache$Cac hedRow.access$202(TableCache.java:418) at org.jboss.ejb.plugins.cmp.jdbc2.schema.TableCache.prom oteRow(TableCache.java:388) at org.jboss.ejb.plugins.cmp.jdbc2.schema.TableCache.getFi elds(TableCache.java:157) at org.jboss.ejb.plugins.cmp.jdbc2.schema.PartitionedTableC ache.getFields(PartitionedTableCache.java:152) at org.jboss.ejb.plugins.cmp.jdbc2.schema.EntityTable$View .getRowByPk(EntityTable.java:868) at org.jboss.ejb.plugins.cmp.jdbc2.schema.EntityTable.loadR ow(EntityTable.java:444) at org.jboss.ejb.plugins.cmp.jdbc2.JDBCStoreManager2.loadE ntity(JDBCStoreManager2.java:347) at org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity (CMPPersistenceManager.java:338) at org.jboss.resource.connectionmanager.CachedConnection Interceptor.loadEntity (CachedConnectionInterceptor.java:355) at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.inv oke(EntitySynchronizationInterceptor.java:246) at org.jboss.resource.connectionmanager.CachedConnection Interceptor.invoke (CachedConnectionInterceptor.java:186) at org.jboss.ejb.plugins.EntityReentranceInterceptor.invoke (EntityReentranceInterceptor.java:116) at org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke (EntityInstanceInterceptor.java:175) at org.jboss.ejb.plugins.EntityCreationInterceptor.invoke (EntityCreationInterceptor.java:54) at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext (AbstractTxInterceptor.java:84) at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransacti ons(TxInterceptorCMT.java:315) at org.jboss.ejb.plugins.TxInterceptorCMT.invoke (TxInterceptorCMT.java:148) at org.jboss.ejb.plugins.SecurityInterceptor.invoke (SecurityInterceptor.java:111) at org.jboss.ejb.plugins.LogInterceptor.invoke (LogInterceptor.java:191) at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invok e(ProxyFactoryFinderInterceptor.java:122) at org.jboss.ejb.EntityContainer.internalInvoke (EntityContainer.java:484) at org.jboss.ejb.Container.invoke (Container.java:709) at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke (BaseLocalProxyFactory.java:419) at org.jboss.ejb.plugins.local.EntityProxy.invoke (EntityProxy.java:44) at $Proxy1224.getName(Unknown Source) at com.activereasoning.session.infrastructure.DeviceConfigS essionBean.updateOrCreateNew (DeviceConfigSessionBean.java:300) at sun.reflect.GeneratedMethodAccessor164.invoke (Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke (Method.java:324) at org.jboss.ejb.StatelessSessionContainer$ContainerInterce ptor.invoke(StatelessSessionContainer.java:683) at org.jboss.resource.connectionmanager.CachedConnection Interceptor.invoke (CachedConnectionInterceptor.java:186) at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor .invoke(StatelessSessionInstanceInterceptor.java:72) at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext (AbstractTxInterceptor.java:84) at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransacti ons(TxInterceptorCMT.java:315) at org.jboss.ejb.plugins.TxInterceptorCMT.invoke (TxInterceptorCMT.java:148) at org.jboss.ejb.plugins.AbstractInterceptor.invoke (AbstractInterceptor.java:94) at com.activereasoning.metrics.MetricsInterceptor.invoke (MetricsInterceptor.java:63) at org.jboss.ejb.plugins.SecurityInterceptor.invoke (SecurityInterceptor.java:111) at org.jboss.ejb.plugins.LogInterceptor.invoke (LogInterceptor.java:191) at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invok e(ProxyFactoryFinderInterceptor.java:122) at org.jboss.ejb.StatelessSessionContainer.internalInvoke (StatelessSessionContainer.java:331) at org.jboss.ejb.Container.invoke (Container.java:709) at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke (BaseLocalProxyFactory.java:419) at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke (StatelessSessionProxy.java:83) at $Proxy1772.updateOrCreateNew(Unknown Source) at com.activereasoning.probemanager.ver4.converters.Host ConfigConverter.processCmd (HostConfigConverter.java:147) at com.activereasoning.probemanager.ver4.util.MessageProc essor.processXMLMesgs(MessageProcessor.java:251) at com.activereasoning.probemanager.ver4.util.MessageProc essor.processMesg(MessageProcessor.java:138) at com.activereasoning.probemanager.mesgbeans.MDDataLis tenerBean.onMessage(MDDataListenerBean.java:190) at sun.reflect.GeneratedMethodAccessor100.invoke (Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke (Method.java:324) at org.jboss.ejb.MessageDrivenContainer$ContainerIntercept or.invoke(MessageDrivenContainer.java:458) at org.jboss.resource.connectionmanager.CachedConnection Interceptor.invoke (CachedConnectionInterceptor.java:186) at org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.i nvoke(MessageDrivenInstanceInterceptor.java:62) at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext (AbstractTxInterceptor.java:84) at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransacti ons(TxInterceptorCMT.java:282) at org.jboss.ejb.plugins.TxInterceptorCMT.invoke (TxInterceptorCMT.java:148) at org.jboss.ejb.plugins.AbstractInterceptor.invoke (AbstractInterceptor.java:94) at com.activereasoning.metrics.MetricsInterceptor.invoke (MetricsInterceptor.java:63) at org.jboss.ejb.plugins.RunAsSecurityInterceptor.invoke (RunAsSecurityInterceptor.java:90) at org.jboss.ejb.plugins.LogInterceptor.invoke (LogInterceptor.java:191) at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invok e(ProxyFactoryFinderInterceptor.java:122) at org.jboss.ejb.MessageDrivenContainer.internalInvoke (MessageDrivenContainer.java:372) at org.jboss.ejb.Container.invoke (Container.java:709) at org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke (JMSContainerInvoker.java:914) at org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageLi stenerImpl.onMessage(JMSContainerInvoker.java:1208) at com.sonicsw.pso.jboss.SonicMQServerSession.onMessage (SonicMQServerSession.java:118) at progress.message.jimpl.Session.kT_(Unknown Source) at progress.message.jimpl.Session.run(Unknown Source) at com.sonicsw.pso.jboss.SonicMQServerSession.run (SonicMQServerSession.java:80) at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker. run(PooledExecutor.java:748) at java.lang.Thread.run(Thread.java:534) ---------------------------------------------------------------------- Comment By: Scott M Stark (starksm) Date: 2004-12-29 12:52 Message: Logged In: YES user_id=175228 All issues have been moved to http://jira.jboss.com. Existing issues have been moved. New issues will be closed with this canned reponse. ---------------------------------------------------------------------- Comment By: Ivan Parra (ioparra) Date: 2004-11-01 10:04 Message: Logged In: YES user_id=812998 OS: Windows 2000 Advanced Server ---------------------------------------------------------------------- Comment By: Ivan Parra (ioparra) Date: 2004-11-01 10:03 Message: Logged In: YES user_id=812998 C:\Active Reasoning\View Point\jre\bin>java -version java version "1.4.2_05" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04) Java HotSpot(TM) Server VM (build 1.4.2_05-b04, mixed mode) ---------------------------------------------------------------------- Comment By: Scott M Stark (starksm) Date: 2004-11-01 09:58 Message: Logged In: YES user_id=175228 What is the full jdk version and operation system version here? Line 388 is the setting of the tail.next value to null: tail.next = null; which simply implies that the tail ivar is null here. Synchronization appears to be handled at a higher level so there needs to be a check that tail is in fact being locked correctly. ---------------------------------------------------------------------- Comment By: Ivan Parra (ioparra) Date: 2004-11-01 09:23 Message: Logged In: YES user_id=812998 I knew you'd say that. I noticed that as well and don't understand. The method "access" isn't even part of the class. I did research on the "access", here is what I found. access is used to mark variable names of inner classes. http://smi- web.stanford.edu/people/grosso/ucbcourse/95_JustSlides/16 Q: How do inner classess access private state(from the "outer class" then)? A: As part of the "preprocessing stage," the compiler also generates static accessor and mutators.... on the "outer" class. These methods names like access$0, access$1, access$2, etcetera taje a single argument(the instance) and return private variable. This help? -Ivan ---------------------------------------------------------------------- Comment By: Alexey Loubyansky (loubyansky) Date: 2004-10-30 05:06 Message: Logged In: YES user_id=543482 I don't know how I can fix this java.lang.NullPointerException at org.jboss.ejb.plugins.cmp.jdbc2.schema.TableCache$Cac hedRow.access$202(TableCache.java:418) TableCache.java:418 line in JBoss_3_2_6 is private class CachedRow http://cvs.sourceforge.net/viewcvs.py/jboss/jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc2/schema/TableCache.java?rev=1.1.2.13&only_with_tag=JBoss_3_2_6&view=markup ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=376685&aid=1057118&group_id=22866 ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/ _______________________________________________ JBoss-Development mailing list JBoss-Development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jboss-development