Merge branch '2.1'
diff --git a/server/tserver/src/main/java/org/apache/accumulo/tserver/ScanServer.java b/server/tserver/src/main/java/org/apache/accumulo/tserver/ScanServer.java
index 91d7fdb..da2528e 100644
--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/ScanServer.java
+++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/ScanServer.java
@@ -522,6 +522,10 @@
extents);
Map<KeyExtent,TabletMetadata> tabletsMetadata = getTabletMetadata(extents);
+ if (!(tabletsMetadata instanceof HashMap)) {
+ // the map returned by getTabletMetadata may not be mutable
+ tabletsMetadata = new HashMap<>(tabletsMetadata);
+ }
for (KeyExtent extent : extents) {
var tabletMetadata = tabletsMetadata.get(extent);
@@ -534,10 +538,6 @@
LOG.info("RFFS {} extent unable to load {} as AssignmentHandler returned false",
myReservationId, extent);
failures.add(extent);
- if (!(tabletsMetadata instanceof HashMap)) {
- // the map returned by getTabletMetadata may not be mutable
- tabletsMetadata = new HashMap<>(tabletsMetadata);
- }
tabletsMetadata.remove(extent);
}
}
@@ -622,14 +622,9 @@
for (KeyExtent extent : tabletsToCheck) {
TabletMetadata metadataAfter = tabletsToCheckMetadata.get(extent);
if (metadataAfter == null) {
- getContext().getAmple().deleteScanServerFileReferences(refs);
LOG.info("RFFS {} extent unable to load {} as metadata no longer referencing files",
myReservationId, extent);
failures.add(extent);
- if (!(tabletsMetadata instanceof HashMap)) {
- // the map returned by getTabletMetadata may not be mutable
- tabletsMetadata = new HashMap<>(tabletsMetadata);
- }
tabletsMetadata.remove(extent);
} else {
// remove files that are still referenced