Whoops, I forgot that you can commit. I just did it. Sorry about that. I hope everyone is happy with the fix.

-- Michelle

Michael Bouschen wrote:

Hi Michelle,

I can check it in myself. I just send out the patch that you have the chance to look at it before I check it in.

Regards Michael

Okay, I will check it in and file the JIRA issue.  Thanks!

-- Michelle

Michael Bouschen wrote:

Hi Michelle,

yes, I see the same exception on my side. I have the feeling this might be a JPOX problem, which is now exposed because with the patch the test uses more instances from the xml. I would like to check in the patch first and then file a new JIRA issue for that. W/o the patch the JPOX guys have no chance to reproduce the problem.

Regards Michael

Hi Michael,

This looks really good (10 failures/50 errors now, was 8 failures 63 errors for appid on alltests.conf), except that the CompletenessTest now fails with:

Description: Completeness test with standard mapping, basic testdata with no relationships.
There was 1 error:
1) test(org.apache.jdo.tck.mapping.CompletenessTest)javax.jdo.JDODataStoreException: Fetch request failed: SELECT applicationidentity0.PERSONS.PERSONID FROM applicationidentity0.PERSONS LEFT OUTER JOIN applicationidentity0.PERSONS ON applicationidentity0.PERSONS.PERSONID = applicationidentity0.PERSONS.MENTOR WHERE (applicationidentity0.PERSONS.PERSONID = ?) at org.jpox.store.rdbms.request.FetchRequest.execute(FetchRequest.java:196) at org.jpox.store.rdbms.table.ClassTable.fetch(ClassTable.java:1771)
    at org.jpox.store.StoreManager.fetch(StoreManager.java:684)
at org.jpox.state.StateManagerImpl.loadNonDFGFields(StateManagerImpl.java:1612) at org.jpox.state.StateManagerImpl.isLoaded(StateManagerImpl.java:1733) at org.apache.jdo.tck.pc.company.Employee.jdoGetprotege(Employee.java) at org.apache.jdo.tck.pc.company.Employee.deepCompareFields(Employee.java:455) at org.apache.jdo.tck.pc.company.FullTimeEmployee.deepCompareFields(FullTimeEmployee.java:119) at org.apache.jdo.tck.mapping.CompletenessTest.test(CompletenessTest.java:102)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:203)
at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:128) at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:106)
NestedThrowablesStackTrace:
ERROR 42X03: Column name 'APPLICATIONIDENTITY0.PERSONS.PERSONID' is in more than one table in the FROM list. at org.apache.derby.iapi.error.StandardException.newException(StandardException.java) at org.apache.derby.impl.sql.compile.JoinNode.getMatchingColumn(JoinNode.java) at org.apache.derby.impl.sql.compile.FromList.bindColumnReference(FromList.java) at org.apache.derby.impl.sql.compile.ColumnReference.bindExpression(ColumnReference.java) at org.apache.derby.impl.sql.compile.ResultColumn.bindExpression(ResultColumn.java) at org.apache.derby.impl.sql.compile.ResultColumnList.bindExpressions(ResultColumnList.java) at org.apache.derby.impl.sql.compile.SelectNode.bindExpressions(SelectNode.java) at org.apache.derby.impl.sql.compile.DMLStatementNode.bindExpressions(DMLStatementNode.java) at org.apache.derby.impl.sql.compile.DMLStatementNode.bind(DMLStatementNode.java) at org.apache.derby.impl.sql.compile.ReadCursorNode.bind(ReadCursorNode.java) at org.apache.derby.impl.sql.compile.CursorNode.bind(CursorNode.java) at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java) at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java) at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java) at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(EmbedPreparedStatement.java) at org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(EmbedPreparedStatement20.java) at org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(EmbedPreparedStatement30.java) at org.apache.derby.jdbc.Driver30.newEmbedPreparedStatement(Driver30.java) at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(EmbedConnection.java) at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(EmbedConnection.java) at com.mchange.v2.c3p0.impl.NewProxyConnection.prepareStatement(NewProxyConnection.java:303) at org.jpox.store.rdbms.request.FetchRequest.execute(FetchRequest.java:140) at org.jpox.store.rdbms.table.ClassTable.fetch(ClassTable.java:1771)
    at org.jpox.store.StoreManager.fetch(StoreManager.java:684)
at org.jpox.state.StateManagerImpl.loadNonDFGFields(StateManagerImpl.java:1612) at org.jpox.state.StateManagerImpl.isLoaded(StateManagerImpl.java:1733) at org.apache.jdo.tck.pc.company.Employee.jdoGetprotege(Employee.java) at org.apache.jdo.tck.pc.company.Employee.deepCompareFields(Employee.java:455) at org.apache.jdo.tck.pc.company.FullTimeEmployee.deepCompareFields(FullTimeEmployee.java:119) at org.apache.jdo.tck.mapping.CompletenessTest.test(CompletenessTest.java:102)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:203)
at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:128) at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:106)

Do you have an idea of what is going on here?

-- Michelle

Michael Bouschen wrote:

Hi Craig, hi Michelle, hi Michael,

I'm sending this email directly to you because we still have problems sending email to the jdo-dev alias.

Attached you find the patch for adding a root object to the completeness test. This patch also fixes the problem described in JIRA JDO-69, because now only the instances in lists in the root object are made persistent. I assigned JDO-69 to me. - It changes the xml files by adding a new bean of type ArrayList having the name "root". It lists all the pc instances that define the "root instances of islands of non-connected object graphs". - I fixed a bug in companyNoRelationships.xml: there were holes in the the sequence of constructor argument index numbers. - I changed class CompletenessTest to read the "root" list and make all instances of that list persistent.
- All the company classes now define a toString method.
- There query tests had its own company.xml file defining different instances than the company.xml under testdata. So I cannot use testdata company.xml file for the query test. Instead I moved query version to the testdata directory and renamed it to companyForQueryTests.xml.

Regards Michael

[...]




Reply via email to