FAQ
Olga just noticed that a bunch of Oracle (and other DB) tests started
failing since 3.0M6. Here is an Oracle list:

Failed tests:


testDbEntityQualifier
(org.apache.cayenne.access.trans.SelectTranslatorTest)
testDelete(org.apache.cayenne.access.DataContextCharPKTest)
testUpdate(org.apache.cayenne.access.DataContextCharPKTest)

Tests in error:
testSerializable(org.apache.cayenne.access.MiscTypesTest)
testEmptyClob(org.apache.cayenne.access.DataContextClobTest)
test5ByteClob(org.apache.cayenne.access.DataContextClobTest)
test5KByteClob(org.apache.cayenne.access.DataContextClobTest)
test1MBClob(org.apache.cayenne.access.DataContextClobTest)
testNullClob(org.apache.cayenne.access.DataContextClobTest)

testFetchLimit_DistinctResultIterator
(org.apache.cayenne.access.jdbc.SelectActionTest)
testEmptyBlob(org.apache.cayenne.access.DataContextBlobTest)
test5ByteBlob(org.apache.cayenne.access.DataContextBlobTest)
test5KByteBlob(org.apache.cayenne.access.DataContextBlobTest)
test1MBBlob(org.apache.cayenne.access.DataContextBlobTest)
testNullBlob(org.apache.cayenne.access.DataContextBlobTest)

The first few things that she checked were related to OracleAdapter
using RTRIM function for CHAR columns too handle padding with spaces
of the CHAR values (e.g. SelectTranslatorTest, DataContextCharPKTest).
The LOB tests all fail with this error:


INFO: SELECT pk_clob_test.nextval FROM DUAL
Aug 13, 2009 3:59:18 PM org.apache.cayenne.access.QueryLogger
logQueryStart
INFO: --- will run 1 query.
Aug 13, 2009 3:59:18 PM org.apache.cayenne.access.QueryLogger
logQueryError
INFO: *** error.
java.lang.ClassCastException:
org.apache.cayenne.dba.oracle.OracleLOBBatchAction cannot be cast to
org.apache.cayenne.access.jdbc.BatchAction
at
org
.apache
.cayenne
.access
.DataDomainActionBuilder.batchAction(DataDomainActionBuilder.java:49)
at
org
.apache
.cayenne
.access
.DataDomainInsertQuery.createSQLAction(DataDomainInsertQuery.java:43)
at
org
.apache.cayenne.dba.oracle.OracleAdapter.getAction(OracleAdapter.java:
337)
at
org
.apache
.cayenne.access.DataNodeQueryAction.runQuery(DataNodeQueryAction.java:
86)
at
org.apache.cayenne.access.DataNode.performQueries(DataNode.java:274)
at
org
.apache
.cayenne
.access.DataDomainFlushAction.runQueries(DataDomainFlushAction.java:226)
at
org
.apache
.cayenne.access.DataDomainFlushAction.flush(DataDomainFlushAction.java:
144)
at
org.apache.cayenne.access.DataDomain.onSyncFlush(DataDomain.java:824)
at org.apache.cayenne.access.DataDomain
$2.transform(DataDomain.java:791)
at
org.apache.cayenne.access.DataDomain.runInTransaction(DataDomain.java:
850)
at org.apache.cayenne.access.DataDomain.onSync(DataDomain.java:788)
at
org.apache.cayenne.access.DataContext.flushToParent(DataContext.java:
1104)
at
org.apache.cayenne.access.DataContext.commitChanges(DataContext.java:
1043)
at
org
.apache
.cayenne
.access.DataContextClobTest.runWithClobSize(DataContextClobTest.java:
125)
at
org
.apache
.cayenne
.access.DataContextClobTest.testEmptyClob(DataContextClobTest.java:54)

Andrey, I know you probably don't have Oracle instance to test, but
maybe you can think of something offhand that may have affected these
tests.

Thanks,
Andrus

Search Discussions

  • Andrey Razumovsky at Aug 13, 2009 at 1:54 pm
    Hi Andrus,

    Most likely this is my fault. I added cast to BatchAction in
    DataDomainActionBuilder class and this causes the exception.
    I'll try to remember the reason I did it. It'll be hard, it was before my
    vacation, after all..

    The biggest problem was that BatchQuery is heavy class, not an interface.
    And, to extend its functionality, I needed delegate mechanizms.
    Likely would not want OracleLOBBatchAction to extend BatchAction, so let me
    try to review the design to see if the class cast can be avoided.

    I'm not sure about testDbEntityQualifier though. Could you bring me stack
    trace.
    If I commit, could you retest on Oracle?

    Thanks,
    Andrey

    2009/8/13 Andrus Adamchik <andrus@objectstyle.org>
    Olga just noticed that a bunch of Oracle (and other DB) tests started
    failing since 3.0M6. Here is an Oracle list:

    Failed tests:


    testDbEntityQualifier(org.apache.cayenne.access.trans.SelectTranslatorTest)
    testDelete(org.apache.cayenne.access.DataContextCharPKTest)
    testUpdate(org.apache.cayenne.access.DataContextCharPKTest)

    Tests in error:
    testSerializable(org.apache.cayenne.access.MiscTypesTest)
    testEmptyClob(org.apache.cayenne.access.DataContextClobTest)
    test5ByteClob(org.apache.cayenne.access.DataContextClobTest)
    test5KByteClob(org.apache.cayenne.access.DataContextClobTest)
    test1MBClob(org.apache.cayenne.access.DataContextClobTest)
    testNullClob(org.apache.cayenne.access.DataContextClobTest)

    testFetchLimit_DistinctResultIterator(org.apache.cayenne.access.jdbc.SelectActionTest)
    testEmptyBlob(org.apache.cayenne.access.DataContextBlobTest)
    test5ByteBlob(org.apache.cayenne.access.DataContextBlobTest)
    test5KByteBlob(org.apache.cayenne.access.DataContextBlobTest)
    test1MBBlob(org.apache.cayenne.access.DataContextBlobTest)
    testNullBlob(org.apache.cayenne.access.DataContextBlobTest)

    The first few things that she checked were related to OracleAdapter using
    RTRIM function for CHAR columns too handle padding with spaces of the CHAR
    values (e.g. SelectTranslatorTest, DataContextCharPKTest). The LOB tests all
    fail with this error:


    INFO: SELECT pk_clob_test.nextval FROM DUAL
    Aug 13, 2009 3:59:18 PM org.apache.cayenne.access.QueryLogger logQueryStart
    INFO: --- will run 1 query.
    Aug 13, 2009 3:59:18 PM org.apache.cayenne.access.QueryLogger logQueryError
    INFO: *** error.
    java.lang.ClassCastException:
    org.apache.cayenne.dba.oracle.OracleLOBBatchAction cannot be cast to
    org.apache.cayenne.access.jdbc.BatchAction
    at
    org.apache.cayenne.access.DataDomainActionBuilder.batchAction(DataDomainActionBuilder.java:49)
    at
    org.apache.cayenne.access.DataDomainInsertQuery.createSQLAction(DataDomainInsertQuery.java:43)
    at
    org.apache.cayenne.dba.oracle.OracleAdapter.getAction(OracleAdapter.java:337)
    at
    org.apache.cayenne.access.DataNodeQueryAction.runQuery(DataNodeQueryAction.java:86)
    at org.apache.cayenne.access.DataNode.performQueries(DataNode.java:274)
    at
    org.apache.cayenne.access.DataDomainFlushAction.runQueries(DataDomainFlushAction.java:226)
    at
    org.apache.cayenne.access.DataDomainFlushAction.flush(DataDomainFlushAction.java:144)
    at org.apache.cayenne.access.DataDomain.onSyncFlush(DataDomain.java:824)
    at org.apache.cayenne.access.DataDomain$2.transform(DataDomain.java:791)
    at
    org.apache.cayenne.access.DataDomain.runInTransaction(DataDomain.java:850)
    at org.apache.cayenne.access.DataDomain.onSync(DataDomain.java:788)
    at
    org.apache.cayenne.access.DataContext.flushToParent(DataContext.java:1104)
    at
    org.apache.cayenne.access.DataContext.commitChanges(DataContext.java:1043)
    at
    org.apache.cayenne.access.DataContextClobTest.runWithClobSize(DataContextClobTest.java:125)
    at
    org.apache.cayenne.access.DataContextClobTest.testEmptyClob(DataContextClobTest.java:54)

    Andrey, I know you probably don't have Oracle instance to test, but maybe
    you can think of something offhand that may have affected these tests.

    Thanks,
    Andrus

  • Andrus Adamchik at Aug 13, 2009 at 2:29 pm
    Hi Andrey,

    That was it. Your fix works. Olga just ran the tests against the new
    trunk + her local changes (one that fixes checks in
    'testDbEntityQualifier' and some others unrelated to your recent
    work), and she reported 100% success on Oracle. She will upload a
    patch with her stuff via Jira.

    Andrus
    On Aug 13, 2009, at 4:54 PM, Andrey Razumovsky wrote:

    Hi Andrus,

    Most likely this is my fault. I added cast to BatchAction in
    DataDomainActionBuilder class and this causes the exception.
    I'll try to remember the reason I did it. It'll be hard, it was
    before my
    vacation, after all..

    The biggest problem was that BatchQuery is heavy class, not an
    interface.
    And, to extend its functionality, I needed delegate mechanizms.
    Likely would not want OracleLOBBatchAction to extend BatchAction, so
    let me
    try to review the design to see if the class cast can be avoided.

    I'm not sure about testDbEntityQualifier though. Could you bring me
    stack
    trace.
    If I commit, could you retest on Oracle?

    Thanks,
    Andrey

    2009/8/13 Andrus Adamchik <andrus@objectstyle.org>
    Olga just noticed that a bunch of Oracle (and other DB) tests started
    failing since 3.0M6. Here is an Oracle list:

    Failed tests:


    testDbEntityQualifier
    (org.apache.cayenne.access.trans.SelectTranslatorTest)
    testDelete(org.apache.cayenne.access.DataContextCharPKTest)
    testUpdate(org.apache.cayenne.access.DataContextCharPKTest)

    Tests in error:
    testSerializable(org.apache.cayenne.access.MiscTypesTest)
    testEmptyClob(org.apache.cayenne.access.DataContextClobTest)
    test5ByteClob(org.apache.cayenne.access.DataContextClobTest)
    test5KByteClob(org.apache.cayenne.access.DataContextClobTest)
    test1MBClob(org.apache.cayenne.access.DataContextClobTest)
    testNullClob(org.apache.cayenne.access.DataContextClobTest)

    testFetchLimit_DistinctResultIterator
    (org.apache.cayenne.access.jdbc.SelectActionTest)
    testEmptyBlob(org.apache.cayenne.access.DataContextBlobTest)
    test5ByteBlob(org.apache.cayenne.access.DataContextBlobTest)
    test5KByteBlob(org.apache.cayenne.access.DataContextBlobTest)
    test1MBBlob(org.apache.cayenne.access.DataContextBlobTest)
    testNullBlob(org.apache.cayenne.access.DataContextBlobTest)

    The first few things that she checked were related to OracleAdapter
    using
    RTRIM function for CHAR columns too handle padding with spaces of
    the CHAR
    values (e.g. SelectTranslatorTest, DataContextCharPKTest). The LOB
    tests all
    fail with this error:


    INFO: SELECT pk_clob_test.nextval FROM DUAL
    Aug 13, 2009 3:59:18 PM org.apache.cayenne.access.QueryLogger
    logQueryStart
    INFO: --- will run 1 query.
    Aug 13, 2009 3:59:18 PM org.apache.cayenne.access.QueryLogger
    logQueryError
    INFO: *** error.
    java.lang.ClassCastException:
    org.apache.cayenne.dba.oracle.OracleLOBBatchAction cannot be cast to
    org.apache.cayenne.access.jdbc.BatchAction
    at
    org
    .apache
    .cayenne
    .access
    .DataDomainActionBuilder.batchAction(DataDomainActionBuilder.java:49)
    at
    org
    .apache
    .cayenne
    .access
    .DataDomainInsertQuery.createSQLAction(DataDomainInsertQuery.java:43)
    at
    org
    .apache
    .cayenne.dba.oracle.OracleAdapter.getAction(OracleAdapter.java:337)
    at
    org
    .apache
    .cayenne
    .access.DataNodeQueryAction.runQuery(DataNodeQueryAction.java:86)
    at
    org.apache.cayenne.access.DataNode.performQueries(DataNode.java:274)
    at
    org
    .apache
    .cayenne
    .access.DataDomainFlushAction.runQueries(DataDomainFlushAction.java:
    226)
    at
    org
    .apache
    .cayenne
    .access.DataDomainFlushAction.flush(DataDomainFlushAction.java:144)
    at
    org.apache.cayenne.access.DataDomain.onSyncFlush(DataDomain.java:824)
    at org.apache.cayenne.access.DataDomain
    $2.transform(DataDomain.java:791)
    at
    org
    .apache.cayenne.access.DataDomain.runInTransaction(DataDomain.java:
    850)
    at org.apache.cayenne.access.DataDomain.onSync(DataDomain.java:788)
    at
    org
    .apache.cayenne.access.DataContext.flushToParent(DataContext.java:
    1104)
    at
    org
    .apache.cayenne.access.DataContext.commitChanges(DataContext.java:
    1043)
    at
    org
    .apache
    .cayenne
    .access
    .DataContextClobTest.runWithClobSize(DataContextClobTest.java:125)
    at
    org
    .apache
    .cayenne
    .access.DataContextClobTest.testEmptyClob(DataContextClobTest.java:
    54)

    Andrey, I know you probably don't have Oracle instance to test, but
    maybe
    you can think of something offhand that may have affected these
    tests.

    Thanks,
    Andrus

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupdev @
categoriescayenne
postedAug 13, '09 at 1:18p
activeAug 13, '09 at 2:29p
posts3
users2
websitecayenne.apache.org

People

Translate

site design / logo © 2022 Grokbase