= sstableutil

List sstable files for the provided table.

ref: https://issues.apache.org/jira/browse/CASSANDRA-7066

Cassandra must be stopped before this tool is executed, or unexpected
results will occur. Note: the script does not verify that Cassandra is
stopped.

== Usage

sstableutil <options> <keyspace> <table>

[cols=",",]
|===
|-c, --cleanup |clean up any outstanding transactions

|-d, --debug |display stack traces

|-h, --help |display this help message

|-o, --oplog |include operation logs

|-t, --type <arg> |all (list all files, final or temporary), tmp (list
temporary files only), final (list final files only),

|-v, --verbose |verbose output
|===

== List all sstables

The basic command lists the sstables associated with a given
keyspace/table.

Example:

....
sstableutil keyspace eventlog
Listing files...
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-CRC.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-Data.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-Digest.crc32
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-Filter.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-Index.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-Statistics.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-Summary.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-32-big-TOC.txt
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-CRC.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-Data.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-Digest.crc32
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-Filter.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-Index.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-Statistics.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-Summary.db
/var/lib/cassandra/data/keyspace/eventlog-6365332094dd11e88f324f9c503e4753/mc-37-big-TOC.txt
....

== List only temporary sstables

Using the -t option followed by [.title-ref]#tmp# will list all
temporary sstables, in the format above. Temporary sstables were used in
pre-3.0 versions of Cassandra.

== List only final sstables

Using the -t option followed by [.title-ref]#final# will list all final
sstables, in the format above. In recent versions of Cassandra, this is
the same output as not using the -t option.

== Include transaction logs

Using the -o option will include transaction logs in the listing, in the
format above.

== Clean up sstables

Using the -c option removes any transactions left over from incomplete
writes or compactions.

From the 3.0 upgrade notes:

New transaction log files have been introduced to replace the
compactions_in_progress system table, temporary file markers (tmp and
tmplink) and sstable ancestors. Therefore, compaction metadata no longer
contains ancestors. Transaction log files list sstable descriptors
involved in compactions and other operations such as flushing and
streaming. Use the sstableutil tool to list any sstable files currently
involved in operations not yet completed, which previously would have
been marked as temporary. A transaction log file contains one sstable
per line, with the prefix "add:" or "remove:". They also contain a
special line "commit", only inserted at the end when the transaction is
committed. On startup we use these files to cleanup any partial
transactions that were in progress when the process exited. If the
commit line is found, we keep new sstables (those with the "add" prefix)
and delete the old sstables (those with the "remove" prefix), vice-versa
if the commit line is missing. Should you lose or delete these log
files, both old and new sstable files will be kept as live files, which
will result in duplicated sstables. These files are protected by
incremental checksums so you should not manually edit them. When
restoring a full backup or moving sstable files, you should clean-up any
left over transactions and their temporary files first.
