

<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
  <meta charset="utf-8" />
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  
  <title>Testing &mdash; Apache Cassandra Documentation v4.0-rc2</title>
  

  
  <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
  <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    <link rel="stylesheet" href="../_static/extra.css" type="text/css" />

  
  

  
  

  

  
  <!--[if lt IE 9]>
    <script src="../_static/js/html5shiv.min.js"></script>
  <![endif]-->
  
    
      <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
        <script src="../_static/jquery.js"></script>
        <script src="../_static/underscore.js"></script>
        <script src="../_static/doctools.js"></script>
    
    <script type="text/javascript" src="../_static/js/theme.js"></script>

    
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Contributing Code Changes" href="patches.html" />
    <link rel="prev" title="Building and IDE Integration" href="ide.html" /> 
</head>

<body class="wy-body-for-nav">

   
  <div class="wy-grid-for-nav">
    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >
          

          
            <a href="../index.html" class="icon icon-home"> Apache Cassandra
          

          
          </a>

          
            
            
              <div class="version">
                4.0-rc2
              </div>
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        
        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../getting_started/index.html">Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../new/index.html">New Features in Apache Cassandra 4.0</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/index.html">Architecture</a></li>
<li class="toctree-l1"><a class="reference internal" href="../cql/index.html">The Cassandra Query Language (CQL)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../data_modeling/index.html">Data Modeling</a></li>
<li class="toctree-l1"><a class="reference internal" href="../configuration/index.html">Configuring Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../operating/index.html">Operating Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Cassandra Tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Contributing to Cassandra</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="gettingstarted.html">Getting Started</a></li>
<li class="toctree-l2"><a class="reference internal" href="ide.html">Building and IDE Integration</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Testing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#unit-testing">Unit Testing</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#long-running-tests">Long running tests</a></li>
<li class="toctree-l4"><a class="reference internal" href="#flaky-tests">Flaky tests</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#dtests">DTests</a></li>
<li class="toctree-l3"><a class="reference internal" href="#performance-testing">Performance Testing</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#cassandra-stress-tool">Cassandra Stress Tool</a></li>
<li class="toctree-l4"><a class="reference internal" href="#cstar-perf">cstar_perf</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#circleci">CircleCI</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="patches.html">Contributing Code Changes</a></li>
<li class="toctree-l2"><a class="reference internal" href="code_style.html">Code Style</a></li>
<li class="toctree-l2"><a class="reference internal" href="license_compliance.html">License Compliance</a></li>
<li class="toctree-l2"><a class="reference internal" href="how_to_review.html">Review Checklist</a></li>
<li class="toctree-l2"><a class="reference internal" href="how_to_commit.html">How-to Commit</a></li>
<li class="toctree-l2"><a class="reference internal" href="documentation.html">Working on Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="ci.html">Jenkins CI Environment</a></li>
<li class="toctree-l2"><a class="reference internal" href="dependencies.html">Dependency Management</a></li>
<li class="toctree-l2"><a class="reference internal" href="release_process.html">Release Process</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../faq/index.html">Frequently Asked Questions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../plugins/index.html">Third-Party Plugins</a></li>
<li class="toctree-l1"><a class="reference internal" href="../bugs.html">Reporting Bugs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contactus.html">Contact us</a></li>
</ul>

            
          
        </div>
        
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="../index.html">Apache Cassandra</a>
        
      </nav>


      <div class="wy-nav-content">
        
        <div class="rst-content">
        
          

















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
        
          <li><a href="index.html">Contributing to Cassandra</a> &raquo;</li>
        
      <li>Testing</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
          
            <a href="../_sources/development/testing.rst.txt" rel="nofollow"> View page source</a>
          
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="testing">
<span id="id1"></span><h1>Testing<a class="headerlink" href="#testing" title="Permalink to this headline">¶</a></h1>
<p>Creating tests is one of the most important and also most difficult parts of developing Cassandra. There are different ways to test your code depending on what you’re working on.</p>
<div class="section" id="unit-testing">
<h2>Unit Testing<a class="headerlink" href="#unit-testing" title="Permalink to this headline">¶</a></h2>
<p>The most simple way to test code in Cassandra is probably by writing a unit test. Cassandra uses JUnit as a testing framework and test cases can be found in the <code class="docutils literal notranslate"><span class="pre">test/unit</span></code> directory. Ideally you’d be able to create a unit test for your implementation that would exclusively cover the class you created (the unit under test). Unfortunately this is not always possible and Cassandra doesn’t have a very mock friendly code base. Often you’ll find yourself in a situation where you have to make use of an embedded Cassandra instance that you’ll be able to interact with in your test. If you want to make use of CQL in your test, you can simply extend CQLTester and use some of the convenient helper methods such as in the following example.</p>
<div class="highlight-java notranslate"><div class="highlight"><pre><span></span><span class="nd">@Test</span>
<span class="kd">public</span> <span class="kt">void</span> <span class="nf">testBatchAndList</span><span class="p">()</span> <span class="kd">throws</span> <span class="n">Throwable</span>
<span class="p">{</span>
   <span class="n">createTable</span><span class="p">(</span><span class="s">&quot;CREATE TABLE %s (k int PRIMARY KEY, l list&lt;int&gt;)&quot;</span><span class="p">);</span>
   <span class="n">execute</span><span class="p">(</span><span class="s">&quot;BEGIN BATCH &quot;</span> <span class="o">+</span>
           <span class="s">&quot;UPDATE %1$s SET l = l +[ 1 ] WHERE k = 0; &quot;</span> <span class="o">+</span>
           <span class="s">&quot;UPDATE %1$s SET l = l + [ 2 ] WHERE k = 0; &quot;</span> <span class="o">+</span>
           <span class="s">&quot;UPDATE %1$s SET l = l + [ 3 ] WHERE k = 0; &quot;</span> <span class="o">+</span>
           <span class="s">&quot;APPLY BATCH&quot;</span><span class="p">);</span>

   <span class="n">assertRows</span><span class="p">(</span><span class="n">execute</span><span class="p">(</span><span class="s">&quot;SELECT l FROM %s WHERE k = 0&quot;</span><span class="p">),</span>
              <span class="n">row</span><span class="p">(</span><span class="n">list</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">)));</span>
<span class="p">}</span>
</pre></div>
</div>
<p>Unit tests can be run from the command line using the <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">test</span></code> command, <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">test</span> <span class="pre">-Dtest.name=&lt;simple_classname&gt;</span></code> to execute a test suite or <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">testsome</span> <span class="pre">-Dtest.name=&lt;FQCN&gt;</span> <span class="pre">-Dtest.methods=&lt;testmethod1&gt;[,testmethod2]</span></code> for individual tests.  For example, to run all test methods in the <code class="docutils literal notranslate"><span class="pre">org.apache.cassandra.cql3.SimpleQueryTest</span></code> class, you would run:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>ant test -Dtest.name=SimpleQueryTest
</pre></div>
</div>
<p>To run only the <code class="docutils literal notranslate"><span class="pre">testTableWithOneClustering()</span></code> test method from that class, you would run:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>ant testsome -Dtest.name=org.apache.cassandra.cql3.SimpleQueryTest -Dtest.methods=testTableWithOneClustering
</pre></div>
</div>
<p>If you see an error like this:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>Throws: cassandra-trunk/build.xml:1134: taskdef A class needed by class org.krummas.junit.JStackJUnitTask cannot be found:
org/apache/tools/ant/taskdefs/optional/junit/JUnitTask  using the classloader
AntClassLoader[/.../cassandra-trunk/lib/jstackjunit-0.0.1.jar]
</pre></div>
</div>
<p>You will need to install the ant-optional package since it contains the <code class="docutils literal notranslate"><span class="pre">JUnitTask</span></code> class.</p>
<div class="section" id="long-running-tests">
<h3>Long running tests<a class="headerlink" href="#long-running-tests" title="Permalink to this headline">¶</a></h3>
<p>Test that consume a significant amount of time during execution can be found in the <code class="docutils literal notranslate"><span class="pre">test/long</span></code> directory and executed as a regular JUnit test or standalone program. Except for the execution time, there’s nothing really special about them. However, ant will execute tests under <code class="docutils literal notranslate"><span class="pre">test/long</span></code> only when using the <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">long-test</span></code> target.</p>
</div>
<div class="section" id="flaky-tests">
<h3>Flaky tests<a class="headerlink" href="#flaky-tests" title="Permalink to this headline">¶</a></h3>
<p>If a test failure is difficult to reproduce you can always use a shell loop, circle repeat strategy and similar solutions. At the JUnit level <code class="docutils literal notranslate"><span class="pre">RepeatableRunner</span></code> will let you run a JUnit class N times for convenience. On tests that are fast this is a much faster way to iterate than doing it at the shell level. Beware of tests that modify singleton state or similar as they won’t work.</p>
</div>
</div>
<div class="section" id="dtests">
<h2>DTests<a class="headerlink" href="#dtests" title="Permalink to this headline">¶</a></h2>
<p>One way of doing integration or system testing at larger scale is by using <a class="reference external" href="https://github.com/apache/cassandra-dtest">dtest</a>, which stands for “Cassandra Distributed Tests”. The idea is to automatically setup Cassandra clusters using various configurations and simulate certain use cases you want to test. This is done using Python scripts and <code class="docutils literal notranslate"><span class="pre">ccmlib</span></code> from the <a class="reference external" href="https://github.com/pcmanus/ccm">ccm</a> project. Dtests will setup clusters using this library just as you do running ad-hoc <code class="docutils literal notranslate"><span class="pre">ccm</span></code> commands on your local machine. Afterwards dtests will use the <a class="reference external" href="http://datastax.github.io/python-driver/installation.html">Python driver</a> to interact with the nodes, manipulate the file system, analyze logs or mess with individual nodes.</p>
<p>Using dtests helps us to prevent regression bugs by continually executing tests on the <a class="reference external" href="https://builds.apache.org/">CI server</a> against new patches. Committers will be able to set up build branches there and your reviewer may use the CI environment to run tests for your patch.</p>
<p>The best way to learn how to write dtests is probably by reading the introduction “<a class="reference external" href="http://www.datastax.com/dev/blog/how-to-write-a-dtest">How to Write a Dtest</a>” and by looking at existing, recently updated tests in the project. New tests must follow certain <a class="reference external" href="https://github.com/apache/cassandra-dtest/blob/trunk/CONTRIBUTING.md">style conventions</a> that are being checked before accepting contributions. In contrast to Cassandra, dtest issues and pull-requests are managed on github, therefor you should make sure to link any created dtests in your Cassandra ticket and also refer to the ticket number in your dtest PR.</p>
<p>Creating a good dtest can be tough, but it should not prevent you from submitting patches! Please ask in the corresponding JIRA ticket how to write a good dtest for the patch. In most cases a reviewer or committer will able to support you, and in some cases they may offer to write a dtest for you.</p>
</div>
<div class="section" id="performance-testing">
<h2>Performance Testing<a class="headerlink" href="#performance-testing" title="Permalink to this headline">¶</a></h2>
<p>Performance tests for Cassandra are a special breed of tests that are not part of the usual patch contribution process. In fact you can contribute tons of patches to Cassandra without ever running performance tests. They are important however when working on performance improvements, as such improvements must be measurable.</p>
<div class="section" id="cassandra-stress-tool">
<h3>Cassandra Stress Tool<a class="headerlink" href="#cassandra-stress-tool" title="Permalink to this headline">¶</a></h3>
<p>See <a class="reference internal" href="../tools/cassandra_stress.html#cassandra-stress"><span class="std std-ref">Cassandra Stress</span></a></p>
</div>
<div class="section" id="cstar-perf">
<h3>cstar_perf<a class="headerlink" href="#cstar-perf" title="Permalink to this headline">¶</a></h3>
<p>Another tool available on github is <a class="reference external" href="https://github.com/datastax/cstar_perf">cstar_perf</a> that can be used for intensive performance testing in large clusters or locally. Please refer to the project page on how to set it up and how to use it.</p>
</div>
</div>
<div class="section" id="circleci">
<h2>CircleCI<a class="headerlink" href="#circleci" title="Permalink to this headline">¶</a></h2>
<p>Cassandra ships with a default <a class="reference external" href="https://circleci.com">CircleCI</a> configuration, to enable running tests on your branches, you need to go the CircleCI website, click “Login” and log in with your github account. Then you need to give CircleCI permission to watch your repositories. Once you have done that, you can optionally configure CircleCI to run tests in parallel - click “Projects”, then your github account and then click the settings for the project. If you leave the parallelism at 1 for Cassandra, only <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">eclipse-warnings</span></code> and <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">test</span></code> will be run. If you up the parallelism to 4, it also runs <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">long-test</span></code>, <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">test-compression</span></code> and <code class="docutils literal notranslate"><span class="pre">ant</span> <span class="pre">stress-test</span></code>.</p>
<p>The configuration for CircleCI is in the <code class="docutils literal notranslate"><span class="pre">.circleci/config.yml</span></code> file. This configuration file is meant to use low resources, you can find equivalent configuration files using more resources in the same <code class="docutils literal notranslate"><span class="pre">.circleci</span></code> directory. Please read the <code class="docutils literal notranslate"><span class="pre">readme.md</span></code> file in that directory for further information. Note that the higher resources are not available in the free tier of CircleCI.</p>
<p>The optional <code class="docutils literal notranslate"><span class="pre">repeated_utest</span></code>/<code class="docutils literal notranslate"><span class="pre">repeated_dtest</span></code> CircleCI jobs run a specific JUnit/Python test repeatedly. In an analogous way, upgrade tests can be run repeatedly with the jobs <code class="docutils literal notranslate"><span class="pre">repeated_upgrade_dtest</span></code>/<code class="docutils literal notranslate"><span class="pre">repeated_jvm_upgrade_dtest</span></code>. This is useful to verify that a certain test is stable. It’s usually a good idea to run these jobs when adding or modifying a test. To specify what test should be run and the number of repetitions you should edit the related evironment variables in the CircleCI configuration file:</p>
<table class="docutils align-default">
<colgroup>
<col style="width: 42%" />
<col style="width: 58%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Variable</p></th>
<th class="head"><p>Description</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UTEST_TARGET</span></code></p></td>
<td><p>The Ant test target to run, for example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">testsome</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">test-jvm-dtest-some</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">test-cdc</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">test-compression</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">test-system-keyspace-directory</span></code></p></li>
</ul>
</td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UTEST_CLASS</span></code></p></td>
<td><p>The name of the Java test class to be run multiple times, for
example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">org.apache.cassandra.cql3.ViewTest</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">org.apache.cassandra.distributed.test.PagingTest</span></code></p></li>
</ul>
</td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UTEST_METHODS</span></code></p></td>
<td><p>The optional specific methods within <code class="docutils literal notranslate"><span class="pre">REPEATED_UTEST_CLASS</span></code>
to be run, for example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">testCompoundPartitionKey</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">testCompoundPartitionKey,testStaticTable</span></code></p></li>
</ul>
</td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UTEST_COUNT</span></code></p></td>
<td><p>The number of times that the repeated Java test should be run</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UTEST_STOP_ON_FAILURE</span></code></p></td>
<td><p>Whether the utest iteration should stop on the first failure</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_DTEST_NAME</span></code></p></td>
<td><p>The Python dtest to be run multiple times, for example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">cqlsh_tests/test_cqlsh.py</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">cqlsh_tests/test_cqlsh.py::TestCqlshSmoke</span></code></p></li>
</ul>
</td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_DTEST_VNODES</span></code></p></td>
<td><p>Whether the repeated Python dtest should use vnodes</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_DTEST_COUNT</span></code></p></td>
<td><p>The number of times that the repeated Python dtest should be
run</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_DTEST_STOP_ON_FAILURE</span></code></p></td>
<td><p>Whether the dtest iteration should stop on the first failure</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UPGRADE_DTEST_NAME</span></code></p></td>
<td><p>A Python upgrade dtest to be run multiple times, for example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">upgrade_tests/cql_tests.py</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">upgrade_tests/repair_test.py</span></code></p></li>
</ul>
</td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UPGRADE_DTEST_COUNT</span></code></p></td>
<td><p>The number of times that the repeated Python upgrade dtest
should be run</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_UPGRADE_DTEST_STOP_ON_</span>
<span class="pre">FAILURE</span></code></p></td>
<td><p>Whether the Python upgrade dtest iteration should stop on the
first failure</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_JVM_UPGRADE_DTEST_CLASS</span></code></p></td>
<td><p>The name of JVM upgrade dtest class to be run multiple times,
for example:</p>
<ul>
<li><div class="line-block">
<div class="line"><code class="docutils literal notranslate"><span class="pre">org.apache.cassandra.distributed.upgrade.</span></code></div>
<div class="line"><code class="docutils literal notranslate"><span class="pre">MixedModeAvailabilityV30Test</span></code></div>
</div>
</li>
<li><div class="line-block">
<div class="line"><code class="docutils literal notranslate"><span class="pre">org.apache.cassandra.distributed.upgrade.</span></code></div>
<div class="line"><code class="docutils literal notranslate"><span class="pre">MixedModeConsistencyV3XTest</span></code></div>
</div>
</li>
</ul>
</td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_JVM_UPGRADE_DTEST_METHODS</span></code></p></td>
<td><p>The optional specific methods within
<code class="docutils literal notranslate"><span class="pre">REPEATED_JVM_UPGRADE_DTEST_CLASS</span></code> to be run, for example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">testAvailabilityV30ToV4</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">testAvailabilityV30ToV3X,testAvailabilityV30ToV4</span></code></p></li>
</ul>
</td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_JVM_UPGRADE_DTEST_COUNT</span></code></p></td>
<td><p>The number of times that the repeated JVM upgrade dtest
should be run</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">REPEATED_JVM_UPGRADE_DTEST_STOP_ON_FAILURE</span></code></p></td>
<td><p>Whether the JVM upgrade dtest iteration should stop on the
first failure</p></td>
</tr>
</tbody>
</table>
</div>
</div>


           </div>
           
          </div>
          <footer>
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
        <a href="patches.html" class="btn btn-neutral float-right" title="Contributing Code Changes" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
        <a href="ide.html" class="btn btn-neutral float-left" title="Building and IDE Integration" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
    </div>

  <hr/>

  <div role="contentinfo">
    <p>
        &#169; Copyright 2020, The Apache Cassandra team.

    </p>
  </div>
    
    
    
    Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
    
    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
    
    provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>
        </div>
      </div>

    </section>

  </div>
  

  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script>

  
  
    
   

</body>
</html>