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

ASF subversion and git services commented on CASSANDRASC-79:
------------------------------------------------------------

Commit 91f31399042a444c2ccfc55d28d64bfe36a72a74 in cassandra-sidecar's branch 
refs/heads/trunk from Doug Rohrer
[ https://gitbox.apache.org/repos/asf?p=cassandra-sidecar.git;h=91f3139 ]

CASSANDRASC-79: Sidecar should be able to load metadata even if the local 
instance is unavailable

- Add SidecarLoadBalancingPolicy to connect to additional nodes beyond local
- Enable Gossip by default (the client really needs it on)
- Retry keyspace creation if it fails
- Use shared executor/hashedwheeltimer netty options for all tests.
  This restores the previous behavior from when the NettyOptions parameter
  was first added, although we're not sure exactly why it's helpful, or if
  it is at all.
- Also store test results as artifacts
- Fix multi-threaded access issues with synchronized for now. Also fix an issue 
where the host couldn't be found if it wasn't using 9042 for the port.
- Prevent spurious reconnects of ignored nodes on onUp events
- Use `QueryOptions#setReprepareOnUp(false)` to prevent an onUp event from 
reconnecting to a node we don't want a connection with.
- Integration test for the load balancing polilcy + Adds fixes for issues found 
while testing.
- Use `ClusterUtils.awaitRingStatus` for retries when waiting for a node to 
shut down

Patch by Doug Rohrer; Reviewed by Francisco Guerrero, Yifan Cai for 
CASSANDRASC-79


> Sidecar should be able to load metadata even if the local instance is 
> unavailable
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRASC-79
>                 URL: https://issues.apache.org/jira/browse/CASSANDRASC-79
>             Project: Sidecar for Apache Cassandra
>          Issue Type: Improvement
>          Components: Rest API
>            Reporter: Doug Rohrer
>            Assignee: Doug Rohrer
>            Priority: Normal
>              Labels: pull-request-available
>
> Today, the sidecar’s CassandraAdapter/CqlSessionProvider uses a load 
> balancing policy that only allows connections to a single instance configured 
> for one of the managed instances of Cassandra. However, this is both 
> unnecessary and potentially harmful, as requests to that instance’s hostname 
> will fail to retrieve information like keyspace/cluster metadata when that 
> instance is unavailable, and will not receive any updates to metadata either, 
> which can cause stale metadata to be used.
> Instead, the CqlSessionProvider should take a list of contact points and use 
> them to connect to the whole cluster (or a subset of nodes) without the 
> single-instance load balancing policy. Where it is necessary to query an 
> individual instance (system tables, attempts to check the health of a 
> particular instance) we can, instead, use the driver’s ability to direct 
> queries to a specific host on a per-statement basis.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to