JPOX CVS now has support for COUNT(DISTINCT ...), AVG(DISTINCT ...), SUM(DISTINCT ...). Builds dated 01/01/2006 or later will have it. Happy New Year.
Another 3 TCK tests now pass.
The test case AggregateResult fails throwing the exception below when DISTINCT is specified inside an aggregate function. The exception is thrown for COUNT, SUM, and AVG.
14:22:43,625 (main) DEBUG [org.apache.jdo.tck] - Executing API query: SELECT AVG(DISTINCT manager.salary) FROM org.apache.jdo.tck.pc.company.FullTimeEmployee
14:22:43,625 (main) INFO [org.apache.jdo.tck] - Exception during setUp or runtest:
org.jpox.store.query.JDOQLQuery$Compiler$ExpressionSyntaxException: ')' expected at character 14 in "AVG(DISTINCT manager.salary)"
at org.jpox.store.query.JDOQLQuery$Compiler.compilePrimary(JDOQLQuery.java:1667)
at org.jpox.store.query.JDOQLQuery$Compiler.compileUnaryExpressionNotPlusMinus(JDOQLQuery.java:1598)
at org.jpox.store.query.JDOQLQuery$Compiler.compileUnaryExpression(JDOQLQuery.java:1579)
at org.jpox.store.query.JDOQLQuery$Compiler.compileMultiplicativeExpression(JDOQLQuery.java:1532)
at org.jpox.store.query.JDOQLQuery$Compiler.compileAdditiveExpression(JDOQLQuery.java:1509)
at org.jpox.store.query.JDOQLQuery$Compiler.compileRelationalExpression(JDOQLQuery.java:1469)
at org.jpox.store.query.JDOQLQuery$Compiler.compileEqualityExpression(JDOQLQuery.java:1446)
at org.jpox.store.query.JDOQLQuery$Compiler.compileAndExpression(JDOQLQuery.java:1434)
at org.jpox.store.query.JDOQLQuery$Compiler.compileExclusiveOrExpression(JDOQLQuery.java:1422)
at org.jpox.store.query.JDOQLQuery$Compiler.compileInclusiveOrExpression(JDOQLQuery.java:1410)
at org.jpox.store.query.JDOQLQuery$Compiler.compileConditionalAndExpression(JDOQLQuery.java:1398)
at org.jpox.store.query.JDOQLQuery$Compiler.compileConditionalOrExpression(JDOQLQuery.java:1380)
at org.jpox.store.query.JDOQLQuery$Compiler.compileExpression(JDOQLQuery.java:1357)
at org.jpox.store.query.JDOQLQuery$Compiler.compileExpressionFromString(JDOQLQuery.java:1287)
at org.jpox.store.query.JDOQLQuery$Compiler.compileExpressionsFromString(JDOQLQuery.java:1341)
at org.jpox.store.query.JDOQLQuery$Compiler.compileResult(JDOQLQuery.java:1044)
at org.jpox.store.query.JDOQLQuery$Compiler.performCompile(JDOQLQuery.java:917)
at org.jpox.store.query.JDOQLQuery$Compiler.executionCompile(JDOQLQuery.java:905)
at org.jpox.store.query.JDOQLQuery.performExecute(JDOQLQuery.java:622)
at org.jpox.store.query.Query.executeWithMap(Query.java:966)
at org.jpox.store.query.Query.executeWithArray(Query.java:939)
at org.jpox.store.query.Query.execute(Query.java:862)
at org.apache.jdo.tck.query.QueryTest.execute(QueryTest.java:1151)
at org.apache.jdo.tck.query.QueryTest.execute(QueryTest.java:1029)
at org.apache.jdo.tck.query.QueryTest.executeAPIQuery(QueryTest.java:966)
at org.apache.jdo.tck.query.QueryTest.executeAPIQuery(QueryTest.java:946)
at org.apache.jdo.tck.query.result.AggregateResult.executeQuery(AggregateResult.java:627)
at org.apache.jdo.tck.query.result.AggregateResult.testAVG(AggregateResult.java:613)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at junit.framework.TestCase.runTest(TestCase.java:154)
at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:204)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at junit.textui.TestRunner.doRun(TestRunner.java:116)
at junit.textui.TestRunner.doRun(TestRunner.java:109)
at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:120)
at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:95)
This message is automatically generated by JIRA.