Uploaded image for project: 'JDO'
  1. JDO
  2. JDO-412

Expectation of jdoPostLoad() invocation does not take into account the possibility of persistent-nontransactional state

    XMLWordPrintableJSON

Details

    Description

      Some tests assume that jdoPostLoad() will be called, but do not take into account the possibilty that persistent-nontransactional is a valid state, and that jdoPostLoad() is not invoked for those instances. The solution should be to force instances to be transitioned to persistent-clean after commit by setting RetainValues=false.

      This affects the following tests:

      org.apache.jdo.tck.api.instancecallbacks.CallingJdoPostload.test
      org.apache.jdo.tck.api.instancecallbacks.ModificationOfNontransactionalNonpersistentFields.test

      The solution is to invoke "setRetainValues(false)" after obtaining the transaction in both the test cases. E.g.:

      Transaction t = pm.currentTransaction();
      t.setRetainValues(false);

      Attachments

        Activity

          People

            mbo Michael Bouschen
            mprudhom Marc Prud'hommeaux
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: