Uploaded image for project: 'OpenJPA'
  1. OpenJPA
  2. OPENJPA-1599

Cache mode properties passes in to em.find and lock methods are not transient

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.0-beta2, 2.0.0-beta3, 2.0.0
    • 2.0.0
    • jpa
    • None

    Description

      Cache mode properties passes in to em.find and lock methods are not transient and permanently
      set to the entity manager, which caused subsequent em operations to use the undesired
      cache mode.

      public <T> T find(Class<T> cls, Object oid, LockModeType mode, Map<String, Object> properties) {
      assertNotCloseInvoked();
      configureCurrentCacheModes(getFetchPlan(), properties); <<---- pushFetchPlan call should be performed first before the getFetchPlan
      configureCurrentFetchPlan(pushFetchPlan(), properties, mode, true);
      try

      { oid = _broker.newObjectId(cls, oid); return (T) _broker.find(oid, true, this); }

      finally

      { popFetchPlan(); }

      }

      Attachments

        Activity

          People

            allee8285 Albert Lee
            allee8285 Albert Lee
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: