long get(@NotNull Document document, @NotNull ID<?, ?> indexId) {
    List<IdVersionInfo> list = document.getUserData(KEY);
    if (list == null) {
      return INVALID_STAMP;
    }

    synchronized (list) {
      for (IdVersionInfo info : list) {
        if (info.id == indexId) {
          long old = info.docVersion;
          if (info.mapVersion != mapVersion) {
            return INVALID_STAMP;
          }
          return old;
        }
      }
      return INVALID_STAMP;
    }
  }
long get(@NotNull Document document, @NotNull ID<?, ?> indexId)