[jboss-jira] [JBoss JIRA] Commented: (JBAS-732) AutoNumberFactory not thread safe

Jan Normann Nielsen (JIRA) jira-events at jboss.com
Mon Oct 23 06:57:41 EDT 2006


    [ http://jira.jboss.com/jira/browse/JBAS-732?page=comments#action_12345658 ] 
            
Jan Normann Nielsen commented on JBAS-732:
------------------------------------------

Please consider reopening this issue.

> AutoNumberFactory not thread safe
> ---------------------------------
>
>                 Key: JBAS-732
>                 URL: http://jira.jboss.com/jira/browse/JBAS-732
>             Project: JBoss Application Server
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: JBossAS-3.2.6 Final
>            Reporter: SourceForge User
>         Assigned To: Scott M Stark
>             Fix For: Closed issues from sourceforge
>
>
> SourceForge Submitter: esriram .
> The getNextInteger() method in the
> org.jboss.varia.autonumber.AutoNumberFactory is not
> thread safe. 
> If multiple threads call this method the
> EJBHome.create() is getting called more than once which
> leads to a DuplicateKeyException. Stack trace given below.
> The fix will be to do a create in a synchronized block.
> --E.Sriram
> 18:38:32:145] [09-08-2003] [syserr] [INFO] [14] :
> javax.ejb.DuplicateKeyException: Entity with primary
> key Address.ADDRESSID already exists [18:38:32:145]
> [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.execute(JDBCCreateEntityCommand.java:205)
> [18:38:32:146] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createEntity(JDBCStoreManager.java:569)
> [18:38:32:147] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManager.java:225)
> [18:38:32:147] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.createEntity(CachedConnectionInterceptor.java:270)
> [18:38:32:148] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.EntityContainer.createHome(EntityContainer.java:725)
> [18:38:32:148] [09-08-2003] [syserr] [INFO] [14] : at
> sun.reflect.GeneratedMethodAccessor77.invoke(Unknown
> Source) [18:38:32:148] [09-08-2003] [syserr] [INFO]
> [14] : at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [18:38:32:148] [09-08-2003] [syserr] [INFO] [14] : at
> java.lang.reflect.Method.invoke(Method.java:324)
> [18:38:32:149] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContainer.java:998)
> [18:38:32:149] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
> [18:38:32:149] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySynchronizationInterceptor.java:188)
> [18:38:32:149] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invokeHome(CachedConnectionInterceptor.java:215)
> [18:38:32:150] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
> [18:38:32:150] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:91)
> [18:38:32:150] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:61)
> [18:38:32:150] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:28)
> [18:38:32:151] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:88)
> [18:38:32:151] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:243)
> [18:38:32:151] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:74)
> [18:38:32:151] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.authentication.interceptor.SecurityInterceptor.invokeHome(SecurityInterceptor.java:94)
> [18:38:32:152] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:120)
> [18:38:32:152] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
> [18:38:32:152] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:93)
> [18:38:32:267] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.EntityContainer.internalInvokeHome(EntityContainer.java:477)
> [18:38:32:268] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.Container.invoke(Container.java:694)
> [18:38:32:268] [09-08-2003] [syserr] [INFO] [14] : at
> sun.reflect.GeneratedMethodAccessor63.invoke(Unknown
> Source) [18:38:32:269] [09-08-2003] [syserr] [INFO]
> [14] : at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [18:38:32:269] [09-08-2003] [syserr] [INFO] [14] : at
> java.lang.reflect.Method.invoke(Method.java:324)
> [18:38:32:269] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
> [18:38:32:269] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
> [18:38:32:270] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:101)
> [18:38:32:270] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:83)
> [18:38:32:270] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
> [18:38:32:270] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.authentication.interceptor.ClientPrincipalAssociator.invoke(ClientPrincipalAssociator.java:44)
> [18:38:32:271] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:173)
> [18:38:32:271] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
> [18:38:32:271] [09-08-2003] [syserr] [INFO] [14] : at
> $Proxy36.create(Unknown Source) [18:38:32:271]
> [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.varia.autonumber.AutoNumberFactory.getNextInteger(AutoNumberFactory.java:60)
> [18:38:32:272] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.db.persistence.LongSequenceGenerator.nextValue(LongSequenceGenerator.java:29)
> [18:38:32:272] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.persistence.DataAccess.generateValues(DataAccess.java:2049)
> [18:38:32:272] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.persistence.DataAccess.insertRows(DataAccess.java:2136)
> [18:38:32:272] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.persistence.DataAccess.add(DataAccess.java:196)
> [18:38:32:273] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.nms.topo.ejb.internal.TopoBean.addResource(TopoBean.java:182)
> [18:38:32:273] [09-08-2003] [syserr] [INFO] [14] : at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method) [18:38:32:273] [09-08-2003] [syserr] [INFO]
> [14] : at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> [18:38:32:273] [09-08-2003] [syserr] [INFO] [14] : at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [18:38:32:274] [09-08-2003] [syserr] [INFO] [14] : at
> java.lang.reflect.Method.invoke(Method.java:324)
> [18:38:32:274] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:629)
> [18:38:32:376] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
> [18:38:32:377] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.AbstractInterceptor.invoke(AbstractInterceptor.java:94)
> [18:38:32:377] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:72)
> [18:38:32:377] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
> [18:38:32:378] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:243)
> [18:38:32:378] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:104)
> [18:38:32:378] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.authentication.interceptor.SecurityInterceptor.invoke(SecurityInterceptor.java:122)
> [18:38:32:379] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
> [18:38:32:379] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.logging.tracing.TracingInterceptor.invoke(TracingInterceptor.java:45)
> [18:38:32:379] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
> [18:38:32:379] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:322)
> [18:38:32:380] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.ejb.Container.invoke(Container.java:674)
> [18:38:32:380] [09-08-2003] [syserr] [INFO] [14] : at
> sun.reflect.GeneratedMethodAccessor63.invoke(Unknown
> Source) [18:38:32:380] [09-08-2003] [syserr] [INFO]
> [14] : at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [18:38:32:380] [09-08-2003] [syserr] [INFO] [14] : at
> java.lang.reflect.Method.invoke(Method.java:324)
> [18:38:32:381] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
> [18:38:32:381] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
> [18:38:32:381] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:101)
> [18:38:32:381] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:83)
> [18:38:32:382] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
> [18:38:32:382] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.authentication.interceptor.ClientPrincipalAssociator.invoke(ClientPrincipalAssociator.java:44)
> [18:38:32:382] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:100)
> [18:38:32:382] [09-08-2003] [syserr] [INFO] [14] : at
> org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
> [18:38:32:383] [09-08-2003] [syserr] [INFO] [14] : at
> $Proxy78.addResource(Unknown Source) [18:38:32:526]
> [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.nms.topo.discovery.wf.network.task.NetworkDiscoveryStartTask.modelNetwork(NetworkDiscoveryStartTask.java:338)
> [18:38:32:526] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.nms.topo.discovery.wf.network.task.NetworkDiscoveryStartTask.executeTask(NetworkDiscoveryStartTask.java:89)
> [18:38:32:527] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.task.internal.TaskManagerImpl.executeTask(TaskManagerImpl.java:343)
> [18:38:32:527] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.task.internal.TaskManagerImpl.executeTask(TaskManagerImpl.java:85)
> [18:38:32:527] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.executor.internal.WorkFlowExecutor.executeTask(WorkFlowExecutor.java:333)
> [18:38:32:527] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.executor.internal.WorkFlowExecutor.controlWorkFlow(WorkFlowExecutor.java:182)
> [18:38:32:528] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.executor.internal.WorkFlowExecutor.executeWorkFlowTemplate(WorkFlowExecutor.java:119)
> [18:38:32:528] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.executor.internal.WorkFlowExecutor.executeWorkFlow(WorkFlowExecutor.java:93)
> [18:38:32:528] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.internal.WorkEngineImpl$WorkFlowExecutorThread.run(WorkEngineImpl.java:675)
> [18:38:32:528] [09-08-2003] [syserr] [INFO] [14] : at
> com.adventnet.workengine.threadpool.ThreadPool$WorkerThread.run(ThreadPool.java:299)

-- 
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