Only open file when read() is called because things like SequenceFile open then immediately seek