Apache9 commented on code in PR #4338:
URL: https://github.com/apache/hbase/pull/4338#discussion_r848598347
##########
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java:
##########
@@ -1157,11 +1154,6 @@ protected List<HStoreFile>
doCompaction(CompactionRequestImpl cr,
}
replaceStoreFiles(filesToCompact, sfs, true);
- // This step is necessary for the correctness of
BrokenStoreFileCleanerChore. It lets the
- // CleanerChore know that compaction is done and the file can be cleaned
up if compaction
- // have failed.
- storeEngine.resetCompactionWriter();
Review Comment:
Logically we need this to keep correctness. IIRC, the problem here is that,
we can only cleanup the writer instance after we successfully commit the store
files to SFT, i.e, after the replaceStoreFile method. That's why we can not
just simply remove the writer instance in commitWriter, otherwise there could
be data loss, i.e, the BrokenStoreFileCleanerChore may delete the store files
which are written just now but have not been added to the SFT yet...
Let me check again if the new implementation can solve the problem.
--
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]