protected byte[] readBytes(int record) throws IOException {
    return withReadLock(() -> {
      final int length = myRecordsTable.getSize(record);
      if (length == 0 || AbstractRecordsTable.isSizeOfRemovedRecord(length)) return ArrayUtilRt.EMPTY_BYTE_ARRAY;
      assert length > 0 : length;

      final long address = myRecordsTable.getAddress(record);
      byte[] result = new byte[length];
      myDataTable.readBytes(address, result);
      return result;
    });
  }
protected byte[] readBytes(int record)