// make sure all objects are retrieved freshly in subsequent transactions
((TransactionImpl) tx).getBroker().clearCache();
OQLQuery qry = odmg.newOQLQuery();
qry.create("select a from " + PersonImpl.class.getName() + " where firstname=$1");
qry.bind(firstnameFather);
Collection result = (Collection) qry.execute();
assertEquals("Exactly one element in result set", 1, result.size());
Person returnedFather = (Person) result.iterator().next();
// should retrieve new instance
assertTrue("not same", returnedFather != father);