1) When reading locations, there's no need to check on disk if the start location is contained among inflight writes but the next one isn't, because locations are batched sequentially.
2) When end-of-batch/end-of-file is reached, there's no need to keep looking for the next location if the next file position doesn't contain an header.
1) When reading locations, there's no need to check on disk if the start location is contained among inflight writes but the next one isn't, because locations are batched sequentially.
2) When end-of-batch/end-of-file is reached, there's no need to keep looking for the next location if the next file position doesn't contain an header.
3) Record headers should be read in block.