docs: public void free()
      {
          // First, make sure there are no locks in any of the lock tables that I touched.
          SessionInfo session = new SessionInfo(0, null); // This will match any session with the same remote session ID
          session.m_iRemoteSessionID = this.getSessionID();
          Iterator<LockTable> iterator = m_hsMyLockTables.iterator();
          while (iterator.hasNext())
          {
              LockTable lockTable = iterator.next();
              lockTable.unlockAll(session);
              iterator.remove();
          }
          super.free();
      }