Uploaded image for project: 'Apache Cassandra'
  1. Apache Cassandra
  2. CASSANDRA-11551

Incorrect counting of pending messages in OutboundTcpConnection

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Low
    • Resolution: Fixed
    • 2.2.13, 3.0.17, 3.11.3
    • None
    • None
    • Low

    Description

      Somehow OutboundTcpConnection.getPendingMessages() seems to return a wrong number.

      nodetool netstats
      Mode: NORMAL
      Not sending any streams.
      Read Repair Statistics:
      Attempted: 1655
      Mismatch (Blocking): 0
      Mismatch (Background): 2
      Pool Name                    Active   Pending      Completed
      Large messages                  n/a         5              0
      Small messages                  n/a         0       31534100
      Gossip messages                 n/a         0         520393
      

      Inspection of the heap dump of that node unveiled that all instances of OutboundTcpConnection.backlog are empty but currentMsgBufferCount is 1 for 5 instances of OutboundTcpConnection.

      Maybe the cause is in OutboundTcpConnection.run() where drainedMessages.size() is called twice but assumed that these are equal.

      /cc aweisberg

      Attachments

        Activity

          People

            chovatia.jaydeep@gmail.com Jaydeepkumar Chovatia
            snazy Robert Stupp
            Jaydeepkumar Chovatia
            Ariel Weisberg
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: