cassandra-client-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul "LeoNerd" Evans <leon...@leonerd.org.uk>
Subject Re: Initialising / maintaining a list of nodes in the cluster
Date Sun, 08 Sep 2013 11:03:09 GMT
So I have now found some answers to some of these, but one question
still remains:

On Fri, 6 Sep 2013 23:29:51 +0100
Paul "LeoNerd" Evans <leonerd@leonerd.org.uk> wrote:

>  * The "system.peers" table identifies peers only by their IP address,
>    not including the port number, whereas TOPOLOGY and STATUS_CHANGE
>    messages include a port.
> 
>    What happens if there is more than one copy of a node using the
>    same IP address?

This can't happen, as the IP address alone is used by Gossip to
identify the nodes.

>    How do I know which TCP port I can use to
>    communicate CQL with a given peer?

It's highly discouraged to use heterogeneous TCP ports for CQL, so in
practice they'll all be the same.

>  * The "system.peers" table doesn't contain any information giving the
>    current availability status of the nodes, so I don't know if they
>    are initially up or down.
> 
>    I can just presume all the known nodes are up until I try
>    connecting to them - in any case, it could be that Cassandra knows
>    of the existence of nodes that for some reason my client can't
>    connect to, so I'd have to handle this case anyway. But it feels
>    like that hint should be there somewhere.

This question still outstanding.

>  * The "system.peers" table doesn't include the actual node I am
>    querying it on.
> 
>    Most of the missing information does appear in the "system.local"
>    table, but not the address. The client does know /an/ address it
>    has connected to that node using, but how can I be sure that this
>    address is the one that will appear in the "peers" list on other
>    nodes? It's quite common for a server to have multiple addresses,
>    so it may be that I've connected to some address different to that
>    which the other nodes know it by.

Turns out it will only accept connections on the IP address it's using
for its peers anyway, so this should be fine.

-- 
Paul "LeoNerd" Evans

leonerd@leonerd.org.uk
ICQ# 4135350       |  Registered Linux# 179460
http://www.leonerd.org.uk/

Mime
View raw message