db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Bouschen (JIRA)" <j...@apache.org>
Subject [jira] Created: (JDO-238) Timing bug in TCK test case ThreadSafe
Date Fri, 09 Dec 2005 10:34:08 GMT
Timing bug in TCK test case ThreadSafe

         Key: JDO-238
         URL: http://issues.apache.org/jira/browse/JDO-238
     Project: JDO
        Type: Bug
  Components: tck11, tck20  
    Reporter: Michael Bouschen
 Assigned to: Martin Zaun 
    Priority: Minor

The TCK test ThreadSafe runs multiple threads, where each thread tries to persist the same
pc instance using its own PM. The expected behavior is that one thread succeeds persisting
the pc instance and stores it at transaction commit. All other threads should result in a
JDOException because the pc instance is already bound to a different PM. All threads close
the PM at the end. 

Now, it might happen that the succeeding thread closes the PM before a parallel thread tries
to persist the pc instance. The behavior of pm.makePersistence for a pc instance bound to
a closed pm is not specified, so it does not necessarily result in an exception.

The test case should be changed such that the succeeding thread waits for all the other threads
before closing the PM. Please note, the solution must be robust enough to avoid a deadlock
situation even if an erroneous JDO implementation would allow multiple threads to succeed
persisting the pc instance.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message