You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by mc...@apache.org on 2021/03/26 09:09:56 UTC
[cassandra] branch cassandra-3.11 updated: Expose
StorageServiceMBean#getKeyspaceReplicationInfo (backport from 4.0 and
CASSANDRA-13853)
This is an automated email from the ASF dual-hosted git repository.
mck 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 ec9b7b9 Expose StorageServiceMBean#getKeyspaceReplicationInfo (backport from 4.0 and CASSANDRA-13853)
ec9b7b9 is described below
commit ec9b7b9d376e9c98cedb3ad4eae90311923bc7bd
Author: Stefan Miklosovic <st...@instaclustr.com>
AuthorDate: Mon Feb 15 14:04:59 2021 +0100
Expose StorageServiceMBean#getKeyspaceReplicationInfo (backport from 4.0 and CASSANDRA-13853)
patch by Stefan Miklosovic; reviewed by Mick Semb Wever for CASSANDRA-16447
---
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/StorageService.java | 10 ++++++++++
src/java/org/apache/cassandra/service/StorageServiceMBean.java | 5 +++++
3 files changed, 16 insertions(+)
diff --git a/CHANGES.txt b/CHANGES.txt
index f7d8209..a91f1cd 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
3.11.11
+ * Add StorageServiceMBean.getKeyspaceReplicationInfo(keyspaceName) (CASSANDRA-16447)
* Upgrade jackson-databind to 2.9.10.8 (CASSANDRA-16462)
Merged from 3.0:
* Ignore trailing zeros in hint files (CASSANDRA-16523)
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 65596aa..a4cbf1e 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -84,6 +84,7 @@ import org.apache.cassandra.repair.*;
import org.apache.cassandra.repair.messages.RepairOption;
import org.apache.cassandra.schema.CompactionParams.TombstoneOption;
import org.apache.cassandra.schema.KeyspaceMetadata;
+import org.apache.cassandra.schema.ReplicationParams;
import org.apache.cassandra.schema.SchemaKeyspace;
import org.apache.cassandra.service.paxos.CommitVerbHandler;
import org.apache.cassandra.service.paxos.PrepareVerbHandler;
@@ -2996,6 +2997,15 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
return Schema.instance.getVersion().toString();
}
+ public String getKeyspaceReplicationInfo(String keyspaceName)
+ {
+ Keyspace keyspaceInstance = Schema.instance.getKeyspaceInstance(keyspaceName);
+ if (keyspaceInstance == null)
+ throw new IllegalArgumentException(); // ideally should never happen
+ ReplicationParams replicationParams = keyspaceInstance.getMetadata().params.replication;
+ return replicationParams.klass.getSimpleName() + " " + replicationParams.options.toString();
+ }
+
public List<String> getLeavingNodes()
{
return stringify(tokenMetadata.getLeavingEndpoints());
diff --git a/src/java/org/apache/cassandra/service/StorageServiceMBean.java b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
index 218cdd9..233673a 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -97,6 +97,11 @@ public interface StorageServiceMBean extends NotificationEmitter
*/
public String getSchemaVersion();
+ /**
+ * Fetch the replication factor for a given keyspace.
+ * @return string representation of replication information
+ */
+ public String getKeyspaceReplicationInfo(String keyspaceName);
/**
* Get the list of all data file locations from conf
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org