db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michelle Caisse <Michelle.Cai...@Sun.COM>
Subject Re: Adding a root object to xml for completeness test
Date Thu, 14 Jul 2005 17:16:54 GMT
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
>>>>>
>>> [...]
>>>
>
>


Mime
View raw message