Issue Details (XML | Word | Printable)

Key: OPENJPA-274
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Patrick Linskey
Reporter: Patrick Linskey
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
OpenJPA

JPQL queries cannot access version fields, including bulk updates

Created: 01/Jul/07 08:25 PM   Updated: 06/Jul/07 02:51 PM
Return to search
Component/s: jdbc, query
Affects Version/s: 0.9.0, 0.9.6, 0.9.7
Fix Version/s: 1.0.0

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works bulk-updates.patch 2007-07-01 09:24 PM Patrick Linskey 15 kB

Resolution Date: 06/Jul/07 02:51 PM


 Description  « Hide
OpenJPA throws an exception if a query uses a field mapped as a @Version. This happens because FieldMappings for fields that are @Version do not have any columns, since the columns are managed separately by the owning ClassMapping's version indicator.

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Patrick Linskey made changes - 01/Jul/07 08:30 PM
Field Original Value New Value
Assignee Patrick Linskey [ pcl ]
Patrick Linskey added a comment - 01/Jul/07 09:24 PM
This patch resolves this bug and also OPENJPA-275. It is possible to decouple this from OPENJPA-275 if it is deemed that OPENJPA-275 is not desirable. Thoughts?

Patrick Linskey made changes - 01/Jul/07 09:24 PM
Attachment bulk-updates.patch [ 12360895 ]
Repository Revision Date User Message
ASF #553912 Fri Jul 06 14:49:52 UTC 2007 pcl OPENJPA-274, OPENJPA-275. Improved our bulk update support to automatically increment version counters as necessary if an UPDATE query does not maintain the version fields itself. Also fixed a bug with all queries involving version fields by changing FieldMappings representing version fields to return their owning ClassMapping's Version's columns from a getColumns() call.
Files Changed
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/Version.java
ADD /openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesAndVersionColumn.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/TimestampVersionStrategy.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/FieldMapping.java
MODIFY /openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/OptimisticLockInstance.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/NumberVersionStrategy.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/DBDictionary.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/SuperclassVersionStrategy.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/VersionStrategy.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/JDBCStoreQuery.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/QueryResultMapping.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/AbstractVersionStrategy.java

Patrick Linskey made changes - 06/Jul/07 02:51 PM
Status Open [ 1 ] Resolved [ 5 ]
Resolution Fixed [ 1 ]