[ http://issues.apache.org/jira/browse/JDO-415?page=all ]

Craig Russell updated JDO-415:
------------------------------

    Attachment: JDO-415.patch

Please review this patch.

There are three problems with the original test case. 

1. As the bug noted, the DataStoreConnection is acquired outside a transaction, 
and there is no guarantee that the DataStoreConnection is even valid after 
beginning a transaction. So I changed the code to acquire the 
DataStoreConnection only after beginning a transaction.

2. If the implementation supports Optimistic transactions, then the test should 
be repeated for both optimistic and datastore transactions.

3. The transaction is never committed. This is fixed by putting the 
DataStoreConnection close and the transaction.commit into the finally block.


> DataStoreConnection assumes datastore transactions are being used
> -----------------------------------------------------------------
>
>                 Key: JDO-415
>                 URL: http://issues.apache.org/jira/browse/JDO-415
>             Project: JDO
>          Issue Type: Bug
>          Components: tck20
>    Affects Versions: JDO 2 final
>            Reporter: Marc Prud'hommeaux
>         Assigned To: Craig Russell
>            Priority: Minor
>         Attachments: JDO-415.patch
>
>
> org.apache.jdo.tck.api.persistencemanager.DataStoreConnection assumes that 
> the connection returned from getDataStoreConnection will be re-used once a 
> JDO transaction is started, but that assertion is only valid when using 
> datastore transactions, and the test case does not ensure that a datastore 
> transaction is being used.
> The solution is to call "getPM().currentTransaction().setOptimistic(false);" 
> just before "getPM().currentTransaction().begin();" in the 
> testDataStoreConnection() test case.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to