milleruntime commented on pull request #2342:
URL: https://github.com/apache/accumulo/pull/2342#issuecomment-964326867
@Manno15 @keith-turner I was in the process of updating this PR based on
your feedback and noticed that the tablet logger is deceptive when no entries
in the file. With no entries, the temp file will get dropped before the rename
so I added this temporary log statement to prove it...
Proof of concept debug line I added to
DataFileManager.bringMinorCompactionOnline():
<pre>
if (dfv.getNumEntries() == 0) {
log.debug("Delete file cause its gonna be empty {}", tmpDatafile);
vm.deleteRecursively(tmpDatafile.getPath());
}
</pre>
From the logs:
<pre>
2021-11-09T11:25:47,482 [tablet.DatafileManager] DEBUG: Delete file cause
its gonna be empty file:.../accumulo/tables/1/t-0000057/F0000002.rf_tmp
2021-11-09T11:25:47,489 [tablet.files] DEBUG: Flushed 1;s;a created
file:.../accumulo/tables/1/t-0000057/F0000002.rf from [memory]
</pre>
And the more I thought about it, this could be really tricky for an admin
trying to debug an issue with a file. The File name is a nice unique thing to
grep for in logs and this could be very misleading when troubleshooting. Since
I am changing the type returned in this method, I think I am going to modify
the `tablet.files` log statement for flush to only include the file when it
gets stored in the metadata.
--
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]