[ 
https://issues.apache.org/jira/browse/OPENJPA-1968?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13013020#comment-13013020
 ] 

Albert Lee commented on OPENJPA-1968:
-------------------------------------

Even with the current changes in OpenJPA, one may still get the optimistic lock 
exception due to a problem in the DataDirect 4.2 jdbc driver.  A case 
W103290127 was opened against DataDirect to get this fix. Attached is a test 
case that reproduce the problem for reference. The problem is openjpa attempts 
to perform an executeUpdate("DELETE/UPDATE") and the method returns 0 instead 
of 1 due to timestamp mismatch. As a result, openjpa translates this condition 
to an optimistic lock exception.

> SQLServerDictionery not using DATETIME2 for jdbc driver other than MS JDBC 
> driver
> ---------------------------------------------------------------------------------
>
>                 Key: OPENJPA-1968
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1968
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: sql
>    Affects Versions: 2.1.0, 2.1.1, 2.2.0
>            Reporter: Albert Lee
>            Assignee: Albert Lee
>             Fix For: 2.1.1, 2.2.0
>
>         Attachments: OPENJPA-1968.patch
>
>
> Use of DATETIME2 db type for Date/Time/Timestamp should based on the 
> SQLServer database version not driver type/vendor.
> As a consequence, if version field is a Timestamp data type, you may get 
> optimistic lock exception due to timestamp precision mismatch and hence 
> update to entity may failed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to