code: private R load(int n, Index editInPlace) {
          assert Thread.holdsLock(this);
          assert dir != null;
          R v = load(new File(dir, String.valueOf(n)), editInPlace);
          if (v==null && editInPlace!=null) {
              // remember the failure.
              // if editInPlace==null, we can create a new copy for this, but not sure if it's worth doing,
              // TODO should we also update numberOnDisk?
              editInPlace.byNumber.put(n, null);
          }
          return v;
      }
docs: Tries to load the record #N.
  
  @return null if the data failed to load.