docs: protected void doLock() throws JournalException {
          ResultSet rs = null;
          boolean succeeded = false;
  
          try {
              startBatch();
          } catch (SQLException e) {
              throw new JournalException("Unable to set autocommit to false.", e);
          }
  
          try {
              conHelper.exec(updateGlobalStmtSQL);
              rs = conHelper.exec(selectGlobalStmtSQL, null, false, 0);
              if (!rs.next()) {
                   throw new JournalException("No revision available.");
              }
              lockedRevision = rs.getLong(1);
              succeeded = true;
          } catch (SQLException e) {
              throw new JournalException("Unable to lock global revision table.", e);
          } finally {
              DbUtility.close(rs);
              if (!succeeded) {
                  doUnlock(false);
              }
          }
      }