How to migrate data from Cassandra 2.1.9 to a fresh 3.5 installation
<p>I tried to use sstableloader to load data into Cassandra 3.5. The data was captured using <code>nodetool snapshot</code> under Cassandra 2.1.9. All the tables loaded fine except one. It's small, only 2 columns and 20 rows. So, I entered this bug: <a href="https://issues.apache.org/jira/browse/CASSANDRA-11806" rel="nofollow">https://issues.apache.org/jira/browse/CASSANDRA-11806</a>. The bug was quickly closed as a duplicate. It doesn't seem to be a duplicate, since the original case is upgrading a node in-place, not loading data with sstableloader.</p>

<p>Even so, I tried to apply the the advice given to run <code>upgradesstable</code> [sic].</p>

<p>The directions given to upgrade from one version of Cassandra to another seem sketchy at best. Here's what I did based on my working backup/restore and info garnered from various Cassandra docs on how to upgrade:</p>

<ul>
<li>Snapshot the data from prod (Cassandra 2.1.9), as usual</li>
<li>Restore data to Cassandra 2.1.14 running on my workstation</li>
<li>Verify the restore to 2.1.14 (it worked)</li>
<li>Copy the data/data/makeyourcase into a Cassandra 3.5 install</li>
<li>Fire up Cassandra 3.5</li>
<li>Run <code>nodetool upgradesstables</code> to upgrade the sstables to 3.5</li>
</ul>

<p><code>nodetool upgradesstables</code> fails:</p>

<pre><code>&gt;./bin/nodetool upgradesstables
error: Unknown column role in table makeyourcase.roles
-- StackTrace --
java.lang.AssertionError: Unknown column role in table makeyourcase.roles
</code></pre>

<p>So, the questions: Is it possible to upgrade directly from 2.1.x to 3.5? What's the actual upgrade process? The process at <a href="http://docs.datastax.com/en/latest-upgrade/upgrade/cassandra/upgradeCassandraDetails.html" rel="nofollow">http://docs.datastax.com/en/latest-upgrade/upgrade/cassandra/upgradeCassandraDetails.html</a> is seemingly missing important details.</p>