Correction: the regression was introduced from 2.0.0-beta3 to 2.0.0.

Best,
Laird

On Mon, Nov 1, 2010 at 3:50 PM, Laird Nelson <[email protected]> wrote:

> setInverseRelation, line 469.
>
> In version 2.0.0-beta3, this all worked fine.
>
> In version 2.0.1 any named query I create blows up with a stack like the
> following:
>
> FailedObject: SELECT j FROM JournalEntry j WHERE j.status <> :voidedEntry
> AND j.effectiveOn >= :beginOn AND j.effectiveOn <= :endOn AND j.id IN
> (SELECT DISTINCT d.accountEntry.journalEntry.id FROM SubsidiaryDetail d
> WHERE d.constituentId = :constituentId) ORDER BY j.effectiveOn DESC
> [java.lang.String]
>     at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:986)
>     at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:885)
>     at
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.load(JDBCStoreManager.java:1030)
>     at
> org.apache.openjpa.jdbc.sql.AbstractResult.load(AbstractResult.java:280)
>     at
> org.apache.openjpa.jdbc.sql.SelectImpl$SelectResult.load(SelectImpl.java:2344)
>     at
> org.apache.openjpa.jdbc.sql.AbstractResult.load(AbstractResult.java:274)
>     at
> org.apache.openjpa.jdbc.kernel.InstanceResultObjectProvider.getResultObject(InstanceResultObjectProvider.java:59)
>     at
> org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:36)
>     at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1246)
>     at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1005)
>     at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:861)
>     at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:792)
>     at
> org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:542)
>     at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:288)
>     at
> org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:302)
>     at
> com.jenzabar.ngp.financial.accounting.jpa.TestCaseJournalEntryEntity.testFindEntryStudent(TestCaseJournalEntryEntity.java:222)
>     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:597)
>     at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>     at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>     at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>     at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>     at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>     at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>     at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
>     at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
>     at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>     at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>     at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>     at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>     at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>     at org.junit.runners.Suite.runChild(Suite.java:128)
>     at org.junit.runners.Suite.runChild(Suite.java:24)
>     at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>     at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>     at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>     at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>     at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>     at
> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:59)
>     at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:120)
>     at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:145)
>     at org.apache.maven.surefire.Surefire.run(Surefire.java:104)
>     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:597)
>     at
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:290)
>     at
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1017)
> Caused by: java.lang.NullPointerException
>     at
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.setInverseRelation(JDBCStoreManager.java:469)
>     at
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initializeState(JDBCStoreManager.java:429)
>     at
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initialize(JDBCStoreManager.java:322)
>     at
> org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:112)
>     at
> org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>     at
> org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:1005)
>     at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:963)
>
> It appears from Googling around that this setInverseRelation call has
> caused problems in the past.
>
> Is this a known problem?
>
> I cannot condense down the work of my colleagues to a test case at the
> moment.  Short of that (of course helpful) step, is there anything else I
> can provide to make debugging this easier?
>
> Best,
> Laird
>

Reply via email to