This is an automated email from the ASF dual-hosted git repository. brandonwilliams pushed a commit to branch cassandra-3.11 in repository https://gitbox.apache.org/repos/asf/cassandra.git
The following commit(s) were added to refs/heads/cassandra-3.11 by this push: new b18a9f0 Validate existence of DCs when repairing b18a9f0 is described below commit b18a9f03377059d9caae8894e8734c2380344b66 Author: Jan Karlsson <jan.karls...@ericsson.com> AuthorDate: Tue Mar 1 09:32:33 2022 +0100 Validate existence of DCs when repairing Patch by Jan Karlsson; reviewed by bereng and brandonwilliams for CASSANDRA-17407 --- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 155d11f..c6708f5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.11.13 + * Validate existence of DCs when repairing (CASSANDRA-17407) * dropping of a materialized view creates a snapshot with dropped- prefix (CASSANDRA-17415) Merged from 3.0: * filter out NULL_VERSION entries from peers table in ConfiguredLimit (CASSANDRA-16518) diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 49f3835..c7e0713 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -3779,6 +3779,13 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { throw new IllegalArgumentException("the local data center must be part of the repair"); } + Set<String> existingDatacenters = tokenMetadata.cloneOnlyTokenMap().getTopology().getDatacenterEndpoints().keys().elementSet(); + List<String> datacenters = new ArrayList<>(options.getDataCenters()); + if (!existingDatacenters.containsAll(datacenters)) + { + datacenters.removeAll(existingDatacenters); + throw new IllegalArgumentException("data center(s) " + datacenters.toString() + " not found"); + } RepairRunnable task = new RepairRunnable(this, cmd, options, keyspace); task.addProgressListener(progressSupport); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org