diff --git a/src/java/org/apache/cassandra/replication/TransferTrackingService.java b/src/java/org/apache/cassandra/replication/TransferTrackingService.java index 5729a047f2..5f6c22e020 100644 --- a/src/java/org/apache/cassandra/replication/TransferTrackingService.java +++ b/src/java/org/apache/cassandra/replication/TransferTrackingService.java @@ -346,6 +346,7 @@ public class TransferTrackingService pendingDir.deleteRecursive(); } } + local.remove(transfer.planId); } finally { diff --git a/test/distributed/org/apache/cassandra/distributed/test/tracking/TrackedImportFailureTest.java b/test/distributed/org/apache/cassandra/distributed/test/tracking/TrackedImportFailureTest.java index a8755cf0af..d8af9833ae 100644 --- a/test/distributed/org/apache/cassandra/distributed/test/tracking/TrackedImportFailureTest.java +++ b/test/distributed/org/apache/cassandra/distributed/test/tracking/TrackedImportFailureTest.java @@ -333,7 +333,7 @@ public class TrackedImportFailureTest extends TrackedTransferTestBase Uninterruptibles.sleepUninterruptibly(5, TimeUnit.SECONDS); // We exclude the missed instance because the SSTables streamed to the pending directory - // are not linked to LocalTransfers and hence cleanup does not know which SSTables to clean up + // are not linked to TransferTrackingService and hence cleanup does not know which SSTables to clean up assertPendingDirs(cluster.stream().filter(instance -> instance != missed).collect(Collectors.toList()), (File pendingUuidDir) -> { Assertions.assertThat(pendingUuidDir.listUnchecked(File::isFile)).isEmpty(); });