keith-turner commented on code in PR #2792:
URL: https://github.com/apache/accumulo/pull/2792#discussion_r970057023
##########
server/gc/src/main/java/org/apache/accumulo/gc/GCRun.java:
##########
@@ -462,4 +479,28 @@ public long getErrorsStat() {
public long getCandidatesStat() {
return candidates;
}
+
+ @Override
+ public boolean isRootTable() {
+ return level == DataLevel.ROOT;
+ }
+
+ @Override
+ public boolean isMetadataTable() {
+ return level == DataLevel.METADATA;
+ }
+
+ @Override
+ public Set<TableId> getCandidateTableIDs() {
+ if (isRootTable()) {
+ return Collections.singleton(MetadataTable.ID);
+ } else if (isMetadataTable()) {
Review Comment:
I have not looked at that PR in a long time. The DataLevel enum did not
exist in 1.10 and the GC was different. In 1.10 the Accumulo GC process did
not handle the the root tablet, it was treated specially in tserver code.
Changes were made to have less special cases for the root tablet and store its
metadata in ZK and treat it like a normal tablet. Part of these changes made
the GC process handle the root tablet. So I am thinking the changes I
suggested are good for the new way the GC works in 2.1. I will look at this
again in depth in an IDE tomorrow to verify I am on the right track.
--
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]