[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15708131#comment-15708131 ] Sylvain Lebresne commented on CASSANDRA-11107: -- bq. Let me know what you think, [~slebresne]. Hum, I guess it's probably late enough in 3.0/3.X cycle to not bother with anything too complex. I guess the main problem is 4.0 where using {{rpc_*}} will look really weird and arbitrary. But I'm fine making this a 4.0 patch only by introducing the new names there as basically a renaming of the old ones where: * for the yaml, since it's a major upgrade, maybe it's fine to just start refusing the old names and adding the new ones direclty. * for the {{peers}}/{{local}} tables, we can add {{native_transport_address}} but keep {{rpc_address}} (which will have the exact same value) temporarily as deprecated so drivers have time to update. * for gossip, I believe we can just rename the {{ApplicationState}} enum but call it a day otherwise. > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15707007#comment-15707007 ] Ariel Weisberg commented on CASSANDRA-11107: I already have code in that direction as part of 7544. I am adding default_native_port which is used when dealing with nodes that don't publish their native port. New version nodes gossip their native port along with the address and that is used. native_port now specifies just the native port of the instance using that yaml file and it doesn't need to match across the cluster. Once a rolling upgrade is complete the configurations can safely diverge across the cluster. It works similarly for listen_address. It's not going to happen quickly, and honestly it seems at risk for a Feb/March release. I have to do a large amount of additional work to get the storage port issue sorted out so it. The incremental additional work for me to do the gossip and peers work is negligible. Native protocol and fixing the client driver side is a bigger issue. I have to update the java client anyways because it's not exposing the cluster metadata in a way that allows tools like sstableloader to work with multiple instances per node. > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15706902#comment-15706902 ] Joel Knighton commented on CASSANDRA-11107: --- That's correct - it's true that I could at least piggyback on those since those migrations/changes would already be necessary. > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15706858#comment-15706858 ] Jason Brown commented on CASSANDRA-11107: - [~jkni] I think [~aweisberg] is planning on addressing the {{peers}} table changes and new {{ApplicationState}} in gossip with some of his work in CASSANDRA-7544. Ariel? > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15706743#comment-15706743 ] Joel Knighton commented on CASSANDRA-11107: --- I've got a patch in progress that solves the easy parts of this. At this point, however, I am having second thoughts regarding the costs/benefits of this change. At this point, to support separate rpc/native_transport configurations, changes would seem to include: * updating the native protocol so that NEW_NODE events include rpc_address and native_transport_address (and other TopologyChangeEvents, since identifiers used by drivers might include both address configurations) * updating the PEERS table to include rpc_address and native_transport_address * adding an ApplicationState in Gossip for native_transport_address. Drivers would also need to be updated to query native_transport_address appropriately. This seems like a fair amount of work when 4.0 will end up negating these changes on removing Thrift. The other option that immediately presents itself is to allow these properties to be set in a 3.X yaml but require them to match the rpc configurations. I'm not sure this is worth it either. Let me know what you think, [~slebresne]. > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15690611#comment-15690611 ] Sylvain Lebresne commented on CASSANDRA-11107: -- Awesome, thanks (and sorry for being pushy). > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15690433#comment-15690433 ] Joel Knighton commented on CASSANDRA-11107: --- That shouldn't be a problem - I expect I'll have time to submit a patch here in the next week or so. > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11107) Add native_transport_address and native_transport_broadcast_address yaml options
[ https://issues.apache.org/jira/browse/CASSANDRA-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15689935#comment-15689935 ] Sylvain Lebresne commented on CASSANDRA-11107: -- Note: for things to not look too awkward in 4.0 (once thrift is removed), we also probably want to add in a similar fashion than what's above: * `native_transport_keepalive`: for some reason the native protocol server reuse `rpc_keepalive` * `native_transport_interface`: similar to `rpc_interface` * `native_transport_interface_prefer_ipv6`: similar to `rpc_interface_prefer_ipv6` I'll also note that working on CASSANDRA-5 and thinks look really weird without those changes, so it would be nice if we could get this in relatively quickly ([~jkni]: meaning, let me know if you don't think you'll have any cycle for this in the next month or so). > Add native_transport_address and native_transport_broadcast_address yaml > options > > > Key: CASSANDRA-11107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11107 > Project: Cassandra > Issue Type: Improvement > Components: Configuration >Reporter: n0rad >Assignee: Joel Knighton >Priority: Minor > > I'm starting cassandra on a container with this /etc/hosts > {quote} > 127.0.0.1rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > ::1 rkt-235c219a-f0dc-4958-9e03-5afe2581bbe1 localhost > {quote} > I have the default configuration except : > {quote} > - seeds: "10.1.1.1" > listen_address : 10.1.1.1 > {quote} > cassandra will start listening on *127.0.0.1:9042* > if I set *rpc_address:10.1.1.1* , even if *start_rpc: false*, cassandra will > listen on 10.1.1.1 > Since rpc is not started, I assumed that *rpc_address* and > *broadcast_rpc_address* will be ignored > It took me a while to figure that. There may be something to do around this -- This message was sent by Atlassian JIRA (v6.3.4#6332)