junegunn opened a new pull request, #8646:
URL: https://github.com/apache/hbase/pull/8646
Jira: HBASE-30377
The timestamp in a WAL's name is its creation time, which only bounds its
entries from below. A WAL stays open until it rolls, so one created before
`startTime` can still hold entries in range, and comparing the name against
`startTime` threw the whole file away.
```
startTime = 100, endTime = 200
WAL created at t=50, rolled at t=150 -> holds entries 50..150
50 <= 200 passes, but 50 >= 100 fails -> file skipped
lost: every entry in 100..150
```
### Fix
Compare against the modification time instead, which bounds the entries from
above. That is only meaningful once the file is closed, since HDFS leaves mtime
at the creation time through `hflush` and `hsync`, so it is gated on
`DistributedFileSystem.isFileClosed`. Anything we cannot answer for, including
non-HDFS filesystems, is treated as open and kept.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]