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

Brandon Williams commented on CASSANDRA-18200:
----------------------------------------------

bq. If I understand you correctly, you want prefer_local to affect the local 
node as well and not always use local IP?

Not necessarily, I need to think about how listen_on_broadcast_address factors 
into this too.

bq. I have also tried to use prefer_local, it only affects the peers not the 
messaging to node itself.

All hosts uses these methods though, there is no distinction between self and 
peers when this is called.  We can see that getPreferredIP is being consulted 
already, and that returns the IP it was passed if no preferred IP was stored 
which is probably why it was a no-op for you.

That said, it does seem to me like the correct behavior to always route our own 
broadcast address back to the listen address, but then 
listen_on_broadcast_address would have no purpose, or at least I'm not sure how 
it would factor into this.

> Cassandra messaging to self changed behavior
> --------------------------------------------
>
>                 Key: CASSANDRA-18200
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18200
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Messaging/Internode
>            Reporter: Maciej Sokol
>            Priority: Normal
>         Attachments: patch.txt
>
>
> During testing of Cassandra on AWS, we noticed some behavior changes between 
> Cassandra 3.11 and Cassandra 4.0 when it comes to messaging.
> When performing a range query with consistency local_quorum, Cassandra sents 
> a request to itself and some peers.
> In case of Cassandra 4.0, it's trying to connect to itself using the 
> broadcast_address while in Cassandra 3.11 it's connecting using the local 
> address (see 
> [https://github.com/apache/cassandra/blob/cassandra-3.11/src/java/org/apache/cassandra/net/OutboundTcpConnectionPool.java#L152].
> This translation seems to be missing in Cassandra 4.X. I think the best place 
> to fix it would be here (see attached file): 
> [https://github.com/apache/cassandra/blob/cassandra-4.0/src/java/org/apache/cassandra/net/OutboundConnectionSettings.java#L451]



--
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