Bugs item #825942, was opened at 2003-10-18 16:29
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=825942&group_id=22866

Category: None
Group: v3.2
Status: Open
Resolution: None
Priority: 5
Submitted By: E.Sriram (esriram)
Assigned to: Nobody/Anonymous (nobody)
Summary: AutoNumberFactory not thread safe

Initial Comment:
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)

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=825942&group_id=22866


-------------------------------------------------------
This SF.net email sponsored by: Enterprise Linux Forum Conference & Expo
The Event For Linux Datacenter Solutions & Strategies in The Enterprise 
Linux in the Boardroom; in the Front Office; & in the Server Room 
http://www.enterpriselinuxforum.com
_______________________________________________
JBoss-Development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to