You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org> on 2007/03/16 18:09:10 UTC
[jira] Resolved: (TUSCANY-1179) Race condition due to lazy metada
initialization when SDO is shared across threads for read intent
[ https://issues.apache.org/jira/browse/TUSCANY-1179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kelvin Goodson resolved TUSCANY-1179.
-------------------------------------
Resolution: Fixed
committing the fix for this -- I'll close this JIRA and open another for the test case which will allow inclusion of the test case once the groboutils licensing issues are resolved
> Race condition due to lazy metada initialization when SDO is shared across threads for read intent
> --------------------------------------------------------------------------------------------------
>
> Key: TUSCANY-1179
> URL: https://issues.apache.org/jira/browse/TUSCANY-1179
> Project: Tuscany
> Issue Type: Bug
> Components: Java SDO Implementation
> Environment: ALL
> Reporter: Hasan Muhammad
> Fix For: Java-SDO-Mx
>
> Attachments: 1179.patch, CreateDataObjectMultiThreadedTestCase.java
>
>
> An a DataObject is being shared across multiple threads for read-only purpose ( no modification), due to lazy metadata initialization, we have a race condition which results in different exceptions at different times ( ConcurrentModificationException, NoSuchElementException). The following is one trace;
> java.util.ConcurrentModificationException
> at org.eclipse.emf.common.util.BasicEList$EIterator.checkModCount(BasicEList.java:1327)
> at org.eclipse.emf.common.util.BasicEList$EIterator.next(BasicEList.java:1275)
> at org.apache.tuscany.sdo.impl.ClassImpl.initAliasNames(ClassImpl.java:404)
> at org.apache.tuscany.sdo.impl.ClassImpl.getProperty(ClassImpl.java:423)
> at org.apache.tuscany.sdo.util.DataObjectUtil.get(DataObjectUtil.java:731)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.get(DataObjectImpl.java:216)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.getDataObject(DataObjectImpl.java:326)
> at org.apache.tuscany.sdo.test.CreateDataObjectMultiThreadedTestCase$CreateDataObjectMultiThread.runTest(CreateDataObjectMultiThreadedTestCase.java:67)
> at net.sourceforge.groboutils.junit.v1.TestRunnable.run(TestRunnable.java:154)
> at java.lang.Thread.run(Thread.java:797)
>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org