You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Vijay (Issue Comment Edited) (JIRA)" <ji...@apache.org> on 2012/03/29 01:09:27 UTC

[jira] [Issue Comment Edited] (CASSANDRA-4099) IncomingTCPConnection recognizes from by doing socket.getInetAddress() instead of BroadCastAddress

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

Vijay edited comment on CASSANDRA-4099 at 3/28/12 11:07 PM:
------------------------------------------------------------

Thanks Brandon, CASSANDRA-4101 looks like a better solution but not only does the Streaming sets the version Gossip or any connunication does set it, the following does it

{code} 
            from = msg.getFrom(); // why? see => CASSANDRA-4099
            if (version > MessagingService.current_version)
            {
                // save the endpoint so gossip will reconnect to it
                Gossiper.instance.addSavedEndpoint(from);
                logger.info("Received " + (isStream ? "streaming " : "") + "connection from newer protocol version. Ignoring");
            }
            else if (msg != null)
            {
                Gossiper.instance.setVersion(from, version);
                logger.debug("set version for {} to {}", from, version);
            }
{code} 
                
      was (Author: vijay2win@yahoo.com):
    Thanks Brandon, CASSANDRA-4101 looks like a better solution but not only does the Streaming sets the version Gossip or any connunication does set it, the following does it

<code>
            from = msg.getFrom(); // why? see => CASSANDRA-4099
            if (version > MessagingService.current_version)
            {
                // save the endpoint so gossip will reconnect to it
                Gossiper.instance.addSavedEndpoint(from);
                logger.info("Received " + (isStream ? "streaming " : "") + "connection from newer protocol version. Ignoring");
            }
            else if (msg != null)
            {
                Gossiper.instance.setVersion(from, version);
                logger.debug("set version for {} to {}", from, version);
            }
</code>
                  
> IncomingTCPConnection recognizes from by doing socket.getInetAddress() instead of BroadCastAddress
> --------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4099
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4099
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Vijay
>            Assignee: Vijay
>            Priority: Minor
>         Attachments: 0001-CASSANDRA-4099.patch
>
>
> change "this.from = socket.getInetAddress()" to understand the broad cast IP, but the problem is we dont know until the first packet is received, this ticket is to work around the problem until it reads the first packet.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira