db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andy Jefferson (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (JDO-672) Test case failure: SQLException in ParenthesesMarkOperatorPrecedence
Date Sat, 29 Jan 2011 12:16:47 GMT

     [ https://issues.apache.org/jira/browse/JDO-672?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andy Jefferson resolved JDO-672.
--------------------------------

    Resolution: Fixed

DN 2.2 and 3.x work on this. 
But then SVN trunk of the TCK use Derby 10.4.2.0 so not a real issue yet either

> Test case failure: SQLException in  ParenthesesMarkOperatorPrecedence
> ---------------------------------------------------------------------
>
>                 Key: JDO-672
>                 URL: https://issues.apache.org/jira/browse/JDO-672
>             Project: JDO
>          Issue Type: Bug
>          Components: tck
>    Affects Versions: JDO 3
>            Reporter: Michael Bouschen
>            Assignee: Andy Jefferson
>            Priority: Minor
>             Fix For: JDO 3 maintenance release 1
>
>
> The failing test is in jdoql.conf: class org.apache.jdo.tck.query.jdoql.ParenthesesMarkOperatorPrecedence
method runTestParenthesesMarkOperatorPrecedence08. 
> The test results in an exception thrown by the derby SQL compiler:
> java.sql.SQLException: Comparisons between 'BOOLEAN' and 'INTEGER' are not supported.
Types must be comparable. String types must also have matching collation. If collation does
not match, a possible solution is to cast operands to force them to the default collation
(e.g. SELECT tablename FROM sys.systables WHERE CAST(tablename AS VARCHAR(128)) = 'T1')
> The derby versions 10.6.1.0 and 10.7.1.1 run into this exception. But it does NOT happen
with derby version 10.4.2.0, which we are using in the maven1 environment.
> Here is the the JDOQL query:
>   SELECT FROM org.apache.jdo.tck.pc.mylib.PCPoint EXCLUDE SUBCLASSES WHERE (x == 2) ==
true
> and here is the generated SQL:
>   SELECT 'org.apache.jdo.tck.pc.mylib.PCPoint' AS NUCLEUS_TYPE,A0.ID,A0.X,A0.Y
>   FROM APPLICATIONIDENTITY0.PCPOINT A0 WHERE A0.X = 2 = 1
> So the question is: what does SQL define when comparing an integer and a boolean?
> The expression "A0.X = 2" evaluates to a boolean which is then compared to the integer
1. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message