[ 
https://issues.apache.org/jira/browse/CASSANDRA-17577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17542958#comment-17542958
 ] 

Brad Schoening commented on CASSANDRA-17577:
--------------------------------------------

I was planning on adding a separate SHOW command to get the token.  You may 
have a set of token IDs already from the table with 'select token(col) from 
table', or you might want to calculate it. 

It seems more flexible and useful to separate the token computation from the 
replica lookup.

> Add cqlsh SHOW REPLICAS by token command
> ----------------------------------------
>
>                 Key: CASSANDRA-17577
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17577
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: CQL/Interpreter
>            Reporter: Brad Schoening
>            Assignee: Brad Schoening
>            Priority: Normal
>             Fix For: 4.x
>
>          Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> 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:
> {quote}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('tests',Murmur3Token(100)){color}
> {color:#4c9aff}[<Host: 127.0.0.1:9042 datacenter1>]{color}
>  
> {quote}
> 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's managed service.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to