private void doSeek(final long pos) throws IOException {
        if (pos < windowByteStart) {
            ((SeekableInputStream) data).seek(windowByteStart);
        } else {
            ((SeekableInputStream) data).seek(pos);
        }
    }
Do a read keeping a watch on the end window.
stroom-data/stroom-data-store-impl-fs/src/main/java/stroom/data/store/impl/fs/RASegmentInputStream.java