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

Byteman rule in stop_data_reads.btm cannot compile against accord.messages.ReplyContext

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • NA
    • Accord

    Description

      The Python read_repair_test relies on a Byteman rule on the doVerb() method in ReadCommandVerbHandler, but accord.messages.ReplyContext isn’t on the classpath. This is probably because we don't include it in the list of jars created in byteman_validate.

      AssertionError: byteman script didn't compile
        Checking rule disable data reads against class org.apache.cassandra.db.ReadCommandVerbHandler
        Parsed rule "disable data reads" for class org.apache.cassandra.db.ReadCommandVerbHandler
        ERROR : Failed to check rule "disable data reads" loaded from /home/cassandra/cassandra-dtest/byteman/read_repair/stop_data_reads.btm line 8 against method doVerb(org.apache.cassandra.net.Message) void
        java.lang.NoClassDefFoundError: accord/messages/ReplyContext
      

      ex. https://app.circleci.com/pipelines/github/maedhroz/cassandra/686/workflows/ffd1e528-b8ec-4534-a333-ab450e110e89/jobs/6481/tests#failed-test-0

      It might make sense to fix this after CASSANDRA-18204 wraps up, so we know exactly how the Accord library is pulled into C*. Then, once we do fix it, we should fix in a way that still works w/ 4.0 and 4.1, etc. (i.e. Don't assume the Accord library must be present.)

      Attachments

        Issue Links

          Activity

            People

              shiraishi Youki Shiraishi
              maedhroz Caleb Rackliffe
              Youki Shiraishi
              Caleb Rackliffe
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 50m
                  50m