[
https://issues.apache.org/jira/browse/CASSJAVA-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17945178#comment-17945178
]
Bret McGuire edited comment on CASSJAVA-92 at 4/16/25 10:25 PM:
----------------------------------------------------------------
To [~smiklosovic] 's question above re: what about other drivers... I haven't
done an exhaustive check on all of them but I did do some digging on Python and
gocql earlier today as (perhaps?) representative cases. Each of them seem to
include:
* LBPs which make use of local DC information
([Python|https://github.com/datastax/python-driver/blob/3.29.2/cassandra/policies.py#L201],
[gocql|#L834-L846])
* STARTUP message generation which is pretty isolated
([Python|https://github.com/datastax/python-driver/blob/3.29.2/cassandra/connection.py#L1389-L1400],
[gocql|#L446-L483])
In the gocql case DCAwareRoundRobinPolicy is [not the
default|https://github.com/apache/cassandra-gocql-driver/blob/v1.7.0/session.go#L172-L174]
but [can be
configured|https://github.com/apache/cassandra-gocql-driver/blob/v1.7.0/doc.go#L115-L128]
via the cluster's PoolConfig.
DCAwareRoundRobinPolicy [is either the default or the foundation for the
default|https://github.com/datastax/python-driver/blob/3.29.2/cassandra/cluster.py#L261-L264]
(depending on the availability of the murmur3 impl) for the Python driver.
was (Author: JIRAUSER304104):
To [~smiklosovic] 's question above re: what about other drivers... I haven't
done an exhaustive check on all of them but I did do some digging on Python and
gocql earlier today as (perhaps?) representative cases. Each of them seem to
include:
* LBPs which make use of local DC information
([Python|https://github.com/datastax/python-driver/blob/3.29.2/cassandra/policies.py#L201],
[gocql|#L834-L846])] )
* STARTUP message generation which is pretty isolated
([Python|https://github.com/datastax/python-driver/blob/3.29.2/cassandra/connection.py#L1389-L1400],
[gocql )|#L446-L483])]
In the gocql case DCAwareRoundRobinPolicy is [not the
default|https://github.com/apache/cassandra-gocql-driver/blob/v1.7.0/session.go#L172-L174]
but [can be
configured|https://github.com/apache/cassandra-gocql-driver/blob/v1.7.0/doc.go#L115-L128]
via the cluster's PoolConfig.
DCAwareRoundRobinPolicy [is either the default or the foundation for the
default|https://github.com/datastax/python-driver/blob/3.29.2/cassandra/cluster.py#L261-L264]
(depending on the availability of the murmur3 impl) for the Python driver.
> Add Local DC to driver connection info and provide visibility with nodetool
> clientstats
> ---------------------------------------------------------------------------------------
>
> Key: CASSJAVA-92
> URL: https://issues.apache.org/jira/browse/CASSJAVA-92
> Project: Apache Cassandra Java driver
> Issue Type: Improvement
> Components: Core
> Reporter: Brad Schoening
> Assignee: Lukasz Antoniak
> Priority: Normal
> Time Spent: 40m
> Remaining Estimate: 0h
>
> When a client application connects to Cassandra using one of the drivers, it
> specifies a local DC now. If the server is aware of the local DC specified,
> this would be very useful to include in {_}nodetool clientstats{_}.
> We often have clusters running disaster recovery scenarios and they'll turn
> off NTR on a DC. But they do not always understand what DC's are being used
> as local DC if they have dozens of applications connecting from different
> teams. In a brown-out scenario, this would also be useful to identify the
> applications connecting to a degraded datacenter.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]