[ http://issues.apache.org/jira/browse/OJB-29?page=all ]

Armin Waibel reassigned OJB-29:
-------------------------------

    Assign To: Armin Waibel

> Infinite loop in case of refresh=true and cycles in references
> --------------------------------------------------------------
>
>          Key: OJB-29
>          URL: http://issues.apache.org/jira/browse/OJB-29
>      Project: OJB
>         Type: Bug
>   Components: PB-API
>     Versions: 1.0.3
>     Reporter: Martin Taal
>     Assignee: Armin Waibel
>  Attachments: testcasesimple.zip
>
> Hi Armin,
> I have attached the objects I try to persist, the sql to generate the 
> database and the repository xml in the zip file which I will attach shortly. 
> I execute the code below to get a loop (and a stack overflow). 
> Let me know if my setup is wrong.
> Good luck!
> gr. Martin
>           PersistenceBroker broker = null;
>           try
>           {
>               broker = 
> PersistenceBrokerFactory.createPersistenceBroker(pbkey);
>               {
>                       final A myA = new A();
>                       final B myB = new B();
>                       myA.setName("I am a");
>                       myA.setMyB(myB);
>                       myB.setName("I am b");
>                       myB.setMyA(myA);
>                       broker.beginTransaction();
>                       broker.store(myA);
>                       broker.store(myB);
>                       broker.commitTransaction();
>               }
>               
>               // now read again
>               {
>                       broker.clearCache();
>                       Criteria criteria = new Criteria();
>                       criteria.addEqualTo("Name", "I am a");
>                       
>                       QueryByCriteria query = QueryFactory.newQuery(A.class, 
> criteria);
>                       A myA =  (A)broker.getObjectByQuery(query);
>                         // Here it loops (and stops with a stack overflow)
>                       assertTrue(myA.getMyB().getName().compareTo("I am b") 
> == 0);
>               }
>           }
>           finally
>           {
>               if (broker != null) broker.close();
>           }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to