Downgrades the SSTables in the given table or snapshot to the version of Cassandra compatible with the current version of DSE.


The location of the cassandra.yaml file depends on the type of installation:
Package installations /etc/dse/cassandra/cassandra.yaml
Tarball installations installation_location/resources/cassandra/conf/cassandra.yaml
Downgrades the SSTables in the given table or snapshot to the version of OSS Apache Cassandra that is compatible with the current version of DSE.
Important: The sstabledowngrade command cannot be used to downgrade system tables or downgrade DSE versions.


[-h | --help] 
[[-k | --keep-source] | [--keep-generation]] 
[-b | --backups]  
[-o | --output-dir output-dir] 
[--schema schema-file [--schema schema-file2 ... ]]
[-t | --throughput rate-limit] 
[--temp-storage tmp-dir]

SSTable compatibility

For details on SSTable versions and compatibility, see DataStax Enterprise, Apache Cassandra, CQL, and SSTable compatibility.


The short form and long form parameters are comma-separated.

Command arguments

Display stack traces.
-h, --help
Display the usage and listing of the commands.
-k, --keep-source
Do not delete the source SSTables. Do not use with the --keep-generation option.
-b, --backups
Rewrite incremental backups for the given table. May not be combined with the snapshot_name option.
Keep the SSTable generation. Do not use with the --keep-source option.
-o, --output-dir
Rewritten files are placed in output-dir/keyspace-name/table-name-and-id.
Allows upgrading and downgrading SSTables using the schema of the table in a CQL file containing the DDL statements to re-create the schema. Must be a DDL file that allows the recreation of the table including dropped columns. Repeat the option to specify multiple DDL schema files.
Important: Always use the schema.cql from a snapshot of the table so that the DDL has all of the information omitted by DESCRIBE TABLE, including dropped columns.
-t, --throughput
Set to limit the maximum disk read rate in MB/s.
When used with --schema, specifies location of temporary data. Directory and contents are deleted when the tool terminates. Directory must not be shared with other tools and must be empty. If not specified the default directory is /tmp.
Keyspace name. Required. Overrides the client_encryption_options in cassandra.yaml.
Table name. Required.
Snapshot name.
  • Rewrites only the specified snapshot.
  • Replaces files in the given snapshot and breaks any hard links to live SSTables.
  • Required before attempting to restore a snapshot taken in a different DSE version than the one that is currently running.


Dowgrade events table in the cycling keyspace

sstabledowngrade cycling events
Found 1 sstables to rewrite.
Rewriting TrieIndexSSTableReader(path='/var/lib/cassandra/data/cycling/events-2118bc7054af11e987feb76774f7ab56/aa-1-bti-Data.db') to BIG/mc.
Rewrite of TrieIndexSSTableReader(path='/var/lib/cassandra/data/cycling/events-2118bc7054af11e987feb76774f7ab56/aa-1-bti-Data.db') to BIG/mc complete.