Issue Details (XML | Word | Printable)

Key: OPENJPA-321
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Teresa Kan
Reporter: Kevin Sutter
Votes: 0
Watchers: 0
Operations

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

DB2 ABS Casting problem

Created: 17/Aug/07 10:00 PM   Updated: 21/Aug/07 03:26 AM
Return to search
Component/s: jdbc
Affects Version/s: 0.9.7
Fix Version/s: 1.0.0

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works OPENJPA-321.patch 2007-08-20 10:14 PM Teresa Kan 11 kB
Text File Licensed for inclusion in ASF works OPENJPA-321.patch 2007-08-17 10:13 PM Catalina Wei 8 kB

Resolution Date: 21/Aug/07 03:26 AM


 Description  « Hide
Via the JPA TCK running against DB2, we found the following problem with casting and the ABS function:

Instead of generating:
..WHERE (CAST(t0.TOTALPRICE AS DOUBLE) > CAST(ABS(?) AS DOUBLE))

We need to generate:
..WHERE (CAST(t0.TOTALPRICE AS DOUBLE) > ABS(CAST(? AS DOUBLE))

While doing a bit more investigation we are finding similar problems with other function expressions such as MOD and TRIM.

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Catalina Wei added a comment - 17/Aug/07 10:13 PM
Fix DB2 Casting problem for ABS, LENGTH, UPPER, LOWER, TRIM, SQRT.

Catalina Wei made changes - 17/Aug/07 10:13 PM
Field Original Value New Value
Attachment OPENJPA-321.patch [ 12364066 ]
Teresa Kan added a comment - 20/Aug/07 10:14 PM
Move some codes from AbstractDB2Dictionary to DB2Dictionary to eliminate unnecessary changes for Derby.

Teresa Kan made changes - 20/Aug/07 10:14 PM
Attachment OPENJPA-321.patch [ 12364192 ]
Repository Revision Date User Message
ASF #567928 Tue Aug 21 03:15:37 UTC 2007 kwsutter OPENJPA-321. Committing Teresa's patch with a few minor formatting updates. Thanks, Teresa.
Files Changed
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/StringLength.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Lit.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/ToUpperCase.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/ToLowerCase.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SQLBuffer.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Trim.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/kernel/exps/UnaryOp.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/DB2Dictionary.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/AbstractDB2Dictionary.java
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Param.java

Kevin Sutter added a comment - 21/Aug/07 03:26 AM
Resolved via revision #567928.

Kevin Sutter made changes - 21/Aug/07 03:26 AM
Resolution Fixed [ 1 ]
Status Open [ 1 ] Resolved [ 5 ]
Repository Revision Date User Message
ASF #567962 Tue Aug 21 05:26:15 UTC 2007 pcl OPENJPA-321. Avoiding JDK1.5-specific String.replace() call. Also changed the method to return a well-balanced SQL, since it looks like the only usage is in a place where well-balanced-ness is possible.
Files Changed
MODIFY /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/DB2Dictionary.java