Brad Schoening created CASSANDRA-17577:
------------------------------------------
Summary: Add CQLSH support for listing replicas by partition key
Key: CASSANDRA-17577
URL: https://issues.apache.org/jira/browse/CASSANDRA-17577
Project: Cassandra
Issue Type: New Feature
Reporter: Brad Schoening
It is often useful to know when a query fails or a query is slow which nodes
the query was routed too. For clusters with vnodes, determining this is not
simple and requires an admin tool like 'nodetool getendpoints;.
But, the Cassandra driver has cluster metadata which identifies which nodes are
the replicas for a given token range. It should be straightforward to support
this in CQLSH.
Example with python driver:
from cassandra.cluster import Cluster
from cassandra.auth import PlainTextAuthProvider
import cassandra.metadata
from cassandra.metadata import Murmur3Token
auth_provider = PlainTextAuthProvider(username='cassandra',
password='cassandra')
cluster = Cluster(['127.0.0.1'], auth_provider=auth_provider)
session = cluster.connect('tests')
cluster.metadata.token_map.get_replicas('tests',Murmur3Token(100))
{color:#4c9aff}>>>
cluster.metadata.token_map.get_replicas('cqlshtests_pfqkkgqjqh',Murmur3Token(100)){color}
{color:#4c9aff}[<Host: 127.0.0.1:9042 datacenter1>]{color}
Users shouldn't require access to an admin tool like nodetool to access the
cluster metadata. This is especially true for Cassandra-as-a-service offerings
like AWS keyspaces or Instaclustr.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]