What will happen is that we will first read a batch (default is currently 5) of logs from the most recently written log file (using file metadata), then we will take note of the timestamp for the last log entry read and store that in ResumableLogReader.LastTime. Then we take the readers and sort them by LastTime and pick the most recent one and read a batch from there, and repeat this process until top is reached. So if you have overlapping log entries in two files, it will read from both files.