TcpConnectionManager only ever has one connection
-------------------------------------------------
Key: CASSANDRA-488
URL: https://issues.apache.org/jira/browse/CASSANDRA-488
Project: Cassandra
Issue Type: Improvement
Reporter: Jonathan Ellis
from irc:
jbellis: am i missing something? it looks like
TcpConnectionManager.allConnections_ will only ever contain a single
TcpConnection, since before adding any connection it checks contains() first,
which relies on TcpConn.equals, which reports that any TcpConns w/ same local &
remote endpoints are equal
junrao: yes, TcpConnectionManager.allConnections_ can have no more than 1
element.
jbellis: that might explain why it's so easy to swamp things and start getting
timeouts -- if all your connections are full of command data, "success" replies
will have to wait for those to drain out first before being sent
IMO the Right Design is one connection for commands, one connection for
acks/replies, rather than a single pool of connections for everything. that
way a connection from A -> B "full" of outgoing commands can't block replies
from A -> B acking commands that came the other way.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.