Hi Tore,
I think I vaguely remember seeing this problem (on HSQL?)
You may have noticed that unit tests configuration for each DbAdapter
is done in a Spring XML file -
"src/tests/resources/test-resources/spring-test-resources.xml". This
file allows to map a "unit test adapter" (aka StackAdapter - a subclass
of org.objectstyle.cayenne.unit.AccessStackAdapter) for a DbAdapter.
Stack adapter allows to suppress certain tests if a given feature is
not supported on a target DB, or to configure correct schema (e.g.
Oracle and Sybase load their own stored procedure definitions). I
suspect that a certain combination of settings of AccessStackAdapter
may lead to this error... I can't point out the problem right away, but
this is the direction to look...
Andrus
On Nov 11, 2004, at 7:14 AM, Tore Halset wrote:
> Hello.
>
> I am trying to create a IngresAdapter as we are evaluating Ingres for
> internal use.
>
> The first thing I had to fix was syntax for create statements. "not
> null" worked, but "null" did not work. I just copied the createTable
> method from JdbcAdapter and removed two lines.
>
> I have also started to do some changes in types.xml, but some more
> work has to be done.
>
> My current problem is with the CLOB_MASTER entity. Running the junit
> tests fails. The CLOB_DETAIL table are created, but not the
> CLOB_MASTER. The full log are attached at the bottom of this mail.
>
> [java] [junit] INFO QueryLogger: ALTER TABLE CLOB_DETAIL ADD
> FOREIGN KEY (CLOB_MASTER_ID) REFERENCES CLOB_MASTER (CLOB_MASTER_ID)
> [java] [junit] ERROR CayenneTestResources: Error generating
> schema...
> [java] [junit] ca.gcf.util.SqlEx: Table 'clob_master' does
> not exist or is not owned by you.
>
> Anyone seen this problem before?
>
> Regards,
> - Tore.
>
> [java] unit-test:
> [java] [junit] INFO QueryLogger: CREATE TABLE
> TIME_LOCKING_TEST (NAME VARCHAR(100), TIME_LOCK DATE,
> TIME_LOCKING_TEST_ID INTEGER NOT NULL, PRIMARY KEY
> (TIME_LOCKING_TEST_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DATE_LOCKING_TEST (DATE_LOCK DATE, DATE_LOCKING_TEST_ID INTEGER NOT
> NULL, NAME VARCHAR(100), PRIMARY KEY (DATE_LOCKING_TEST_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> SIMPLE_LOCKING_TEST (DESCRIPTION VARCHAR(200), LOCKING_TEST_ID INTEGER
> NOT NULL, NAME VARCHAR(100), PRIMARY KEY (LOCKING_TEST_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> REL_LOCKING_TEST (NAME VARCHAR(100), REL_LOCKING_TEST_ID INTEGER NOT
> NULL, SIMPLE_LOCKING_TEST_ID INTEGER, PRIMARY KEY
> (REL_LOCKING_TEST_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE LOCKING_HELPER
> (LOCKING_HELPER_ID INTEGER NOT NULL, NAME VARCHAR(100),
> REL_LOCKING_TEST_ID INTEGER, PRIMARY KEY (LOCKING_HELPER_ID))
> [java] [junit] INFO QueryLogger: ALTER TABLE
> REL_LOCKING_TEST ADD FOREIGN KEY (SIMPLE_LOCKING_TEST_ID) REFERENCES
> SIMPLE_LOCKING_TEST (LOCKING_TEST_ID)
> [java] [junit] INFO QueryLogger: ALTER TABLE LOCKING_HELPER
> ADD FOREIGN KEY (REL_LOCKING_TEST_ID) REFERENCES REL_LOCKING_TEST
> (REL_LOCKING_TEST_ID)
> [java] [junit] INFO QueryLogger: CREATE TABLE CLIENT_COMPANY
> (CLIENT_COMPANY_ID INTEGER NOT NULL, NAME VARCHAR(100), PRIMARY KEY
> (CLIENT_COMPANY_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE DEPARTMENT
> (DEPARTMENT_ID INTEGER NOT NULL, MANAGER_ID INTEGER, NAME VARCHAR(100)
> NOT NULL, PRIMARY KEY (DEPARTMENT_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE PERSON
> (CLIENT_COMPANY_ID INTEGER, CLIENT_CONTACT_TYPE VARCHAR(50),
> DEPARTMENT_ID INTEGER, NAME VARCHAR(100) NOT NULL, PERSON_ID INTEGER
> NOT NULL, PERSON_TYPE CHAR(2) NOT NULL, SALARY FLOAT, PRIMARY KEY
> (PERSON_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE ADDRESS
> (ADDRESS_ID INTEGER NOT NULL, CITY VARCHAR(100), PERSON_ID INTEGER NOT
> NULL, PRIMARY KEY (ADDRESS_ID))
> [java] [junit] INFO QueryLogger: ALTER TABLE DEPARTMENT ADD
> FOREIGN KEY (MANAGER_ID) REFERENCES PERSON (PERSON_ID)
> [java] [junit] INFO QueryLogger: ALTER TABLE PERSON ADD
> FOREIGN KEY (CLIENT_COMPANY_ID) REFERENCES CLIENT_COMPANY
> (CLIENT_COMPANY_ID)
> [java] [junit] INFO QueryLogger: ALTER TABLE PERSON ADD
> FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (DEPARTMENT_ID)
> [java] [junit] INFO QueryLogger: ALTER TABLE ADDRESS ADD
> FOREIGN KEY (PERSON_ID) REFERENCES PERSON (PERSON_ID)
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DELETE_RULE_FLATB (FLATB_ID INTEGER NOT NULL, PRIMARY KEY (FLATB_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> RELATIONSHIP_HELPER (NAME VARCHAR(100), RELATIONSHIP_HELPER_ID INTEGER
> NOT NULL, PRIMARY KEY (RELATIONSHIP_HELPER_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> FLATTENED_TEST_1 (FT1_ID INTEGER NOT NULL, NAME VARCHAR(100) NOT NULL,
> PRIMARY KEY (FT1_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE MEANINGFUL_FK
> (MEANIGNFUL_FK_ID INTEGER NOT NULL, RELATIONSHIP_HELPER_ID INTEGER NOT
> NULL, PRIMARY KEY (MEANIGNFUL_FK_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DELETE_RULE_FLATA (FLATA_ID INTEGER NOT NULL, PRIMARY KEY (FLATA_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE CLOB_DETAIL
> (CLOB_DETAIL_ID INTEGER NOT NULL, CLOB_MASTER_ID INTEGER, NAME
> VARCHAR(254), PRIMARY KEY (CLOB_DETAIL_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE TO_ONEFK2
> (TO_ONEFK2_PK INTEGER NOT NULL, PRIMARY KEY (TO_ONEFK2_PK))
> [java] [junit] INFO QueryLogger: CREATE TABLE TO_ONEFK1
> (TO_ONEFK1_FK INTEGER NOT NULL, TO_ONEFK1_PK INTEGER NOT NULL, PRIMARY
> KEY (TO_ONEFK1_PK))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> FLATTENED_TEST_2 (FT1_ID INTEGER, FT2_ID INTEGER NOT NULL, NAME
> VARCHAR(100) NOT NULL, PRIMARY KEY (FT2_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> REFLEXIVE_AND_TO_ONE (NAME VARCHAR(100), PARENT_ID INTEGER,
> REFLEXIVE_AND_TO_ONE_ID INTEGER NOT NULL, RELATIONSHIP_HELPER_ID
> INTEGER, PRIMARY KEY (REFLEXIVE_AND_TO_ONE_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DELETE_RULE_JOIN (FLATA_ID INTEGER NOT NULL, FLATB_ID INTEGER NOT
> NULL, PRIMARY KEY (FLATA_ID, FLATB_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DELETE_RULE_TEST2 (DEL_RULE_TEST2_ID INTEGER NOT NULL, PRIMARY KEY
> (DEL_RULE_TEST2_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> FLATTENED_TEST_3 (FT2_ID INTEGER, FT3_ID INTEGER NOT NULL, NAME
> VARCHAR(100) NOT NULL, PRIMARY KEY (FT3_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DELETE_RULE_TEST3 (DELETE_RULE_TEST_3_FK INTEGER,
> DELETE_RULE_TEST_3_ID INTEGER NOT NULL, PRIMARY KEY
> (DELETE_RULE_TEST_3_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE
> DELETE_RULE_TEST1 (DEL_RULE_TEST1_ID INTEGER NOT NULL, TEST2_ID
> INTEGER NOT NULL, PRIMARY KEY (DEL_RULE_TEST1_ID))
> [java] [junit] INFO QueryLogger: CREATE TABLE COMPLEX_JOIN
> (EXTRA_COLUMN VARCHAR(50), FT1_FK INTEGER, FT3_FK INTEGER, PK INTEGER
> NOT NULL, PRIMARY KEY (PK))
> [java] [junit] INFO QueryLogger: ALTER TABLE MEANINGFUL_FK
> ADD FOREIGN KEY (RELATIONSHIP_HELPER_ID) REFERENCES
> RELATIONSHIP_HELPER (RELATIONSHIP_HELPER_ID)
> [java] [junit] INFO QueryLogger: ALTER TABLE CLOB_DETAIL ADD
> FOREIGN KEY (CLOB_MASTER_ID) REFERENCES CLOB_MASTER (CLOB_MASTER_ID)
> [java] [junit] ERROR CayenneTestResources: Error generating
> schema...
> [java] [junit] ca.gcf.util.SqlEx: Table 'clob_master' does
> not exist or is not owned by you.
> [java] [junit] at
> ca.gcf.jdbc.DrvObj.readError(DrvObj.java:773)
> [java] [junit] at
> ca.gcf.jdbc.JdbcStmt.readError(JdbcStmt.java:2259)
> [java] [junit] at
> ca.gcf.jdbc.DrvObj.readResults(DrvObj.java:629)
> [java] [junit] at
> ca.gcf.jdbc.JdbcStmt.readResults(JdbcStmt.java:2156)
> [java] [junit] at
> ca.gcf.jdbc.JdbcStmt.readResults(JdbcStmt.java:2107)
> [java] [junit] at
> ca.gcf.jdbc.JdbcStmt.exec(JdbcStmt.java:1364)
> [java] [junit] at
> ca.gcf.jdbc.JdbcStmt.execute(JdbcStmt.java:551)
> [java] [junit] at
> org.objectstyle.cayenne.unit.AbstractAccessStack.createSchema(AbstractA
> ccessStack.java:289)
> [java] [junit] at
> org.objectstyle.cayenne.unit.SimpleAccessStack.createSchema(SimpleAcces
> sStack.java:149)
> [java] [junit] at
> org.objectstyle.cayenne.unit.CayenneTestResources.rebuildSchema(Cayenne
> TestResources.java:185)
> [java] [junit] at
> org.objectstyle.cayenne.unit.CayenneTestResources.<clinit>(CayenneTestR
> esources.java:143)
> [java] [junit] at java.lang.Class.forName0(Native Method)
> [java] [junit] at java.lang.Class.forName(Class.java:141)
> [java] [junit] at
> org.objectstyle.cayenne.unit.CayenneTestCase.class$(CayenneTestCase.jav
> a:93)
>
> [java] [junit] at
> org.objectstyle.cayenne.unit.CayenneTestCase.<clinit>(CayenneTestCase.j
> ava:93)
> [java] BUILD FAILED
> [java] [junit] at java.lang.Class.forName0(Native Method)
> [java] java.lang.ExceptionInInitializerError
> [java] [junit] at java.lang.Class.forName(Class.java:141)
>
> [java] [junit] at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.<init>(JUn
> itTestRunner.java:204)
>
>
This archive was generated by hypermail 2.0.0 : Sun Nov 14 2004 - 21:23:47 EST