dlmarion commented on code in PR #2750:
URL: https://github.com/apache/accumulo/pull/2750#discussion_r888184007
##########
server/manager/src/main/java/org/apache/accumulo/manager/TabletGroupWatcher.java:
##########
@@ -635,31 +637,34 @@ private void deleteTablets(MergeInfo info) throws
AccumuloException {
ServerColumnFamily.TIME_COLUMN.fetch(scanner);
scanner.fetchColumnFamily(DataFileColumnFamily.NAME);
scanner.fetchColumnFamily(CurrentLocationColumnFamily.NAME);
- Set<String> datafiles = new TreeSet<>();
+ Set<Reference> datafilesAndDirs = new TreeSet<>();
Review Comment:
I think that a typical implementation of `hashCode`, `equals`, and
`compareTo` would use all of the member variables, not just one of them.
Looking at `Reference`, `RelativeTabletDirectory`, and `TabletDirectory`, I
think I'm a little confused as to how they are used and why. I thought that all
file references in the metadata table were absolute. Given my confusion, I
can't say whether or not the changes in 60b60de are sufficient. I think the
changes are sufficient to order the TreeSet, I'm just not sure what the side
effects are of only using one of the member variables in the comparison methods.
--
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]