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

Size of fixed-width write values not verified from peers

    XMLWordPrintableJSON

    Details

      Description

      There are any number of reasons data arriving on a node might be corrupt in a manner that can ultimately pollute non-corrupt data.  CASSANDRA-14568 is just one example.  In this bug’s case, invalid clusterings were sent to a legacy version peer, which eventually sent them back to a latest version peer.  In either case, verification of the size of the values arriving would have prevented the corruption spreading, or affecting whole-sstable operations containing the values.
       
      I propose verifying the fixed-width types arriving from peers, and also on serialization.  The former permits rejecting the write with an exception, and preventing the write being ACK’d, or polluting memtables (thus maintaining update atomicity without affecting more records).  The latter will be a guarantee that this corruption cannot make it to an sstable via any other route (e.g. a bug internal to the node)

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              benedict Benedict
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: