@Override
  public void seek(long position) throws IOException {
    if (position > file.length) {
      throw new EOFException();
    }
    int targetChunk = (int) (position / file.getChunkSize());
    int targetPosition = (int) (position % file.getChunkSize());

    if (targetChunk != (chunkId - 1)) {
      chunk = file.getFileSystem().getChunk(file, targetChunk);
      chunkId = targetChunk + 1;
      chunkPosition = targetPosition;
    } else {
      chunkPosition = targetPosition;
    }
  }
An input stream that reads chunks from a File saved in the region. This input stream will keep
going back to the region to look for chunks until nothing is found.
geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/filesystem/FileInputStream.java