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

CEP-15: (C*) Improve the chaos generation for Burn Tests: slow/flakey connections and dropped messages

    XMLWordPrintableJSON

Details

    Description

      Burn test should be enhanced to add the following:

      1) message dropping from one node to another (this is different than the current partition set logic in accord.impl.basic.Cluster#partitionSet)
      2) for messages with callbacks, trigger failure case
      3) redundant message delivery

      Related work:

      • Simulator’s org.apache.cassandra.simulator.systems.SimulatedAction#applyToMessage
      • Figures out what delivery action to perform via org.apache.cassandra.simulator.FutureActionScheduler#shouldDeliver
        • timeout if dropPartition[from] != dropPartition[to] // either to/from is in drop partition, but not both
        • config asked to override and deliver
        • 50/50 chance to deliver, after that 50/50 to deliver w/ timeout, after that cause a failure
      • in C* failure is an enum with Timeout and Unknown
      • knows the schedule time and the message expire time, and can promote a DELIVER event to DELIVER_AND_TIMEOUT
      • triggers the timeout

      Attachments

        Activity

          People

            dcapwell David Capwell
            dcapwell David Capwell
            David Capwell
            Benedict Elliott Smith
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: