code: public void beginUpdate() {
          if (log.isTraceEnabled()) {
              log.trace("beginUpdate - locked: {} owner: {}", lock.isLocked(), lock.isHeldByCurrentThread());
          }
          // make sure only one thread can update the SO
          lock.lock();
          so.beginUpdate();
      }
docs: {@inheritDoc}