scylladb / scylla-jmx

Scylla JMX proxy
GNU Affero General Public License v3.0
29 stars 52 forks source link

nodetool compact silently ignores the "-s" option #60

Open nyh opened 5 years ago

nyh commented 5 years ago

"nodetool compact" has a "-s" option to ask not to compact all the data into one SSTable, but rather split it into one table in each size tier (one table with half the data, one with 1/4, one with 1/8, etc.). We silently ignore this option. We should probably throw an unimplemented exception in this case instead, not silently ignore the user's explicit request.

I think the culprit is in the scylla-jmx project, in src/main/java/org/apache/cassandra/service/StorageService.java, we have:

    @Override
    public void forceKeyspaceCompaction(boolean splitOutput, String keyspaceName, String... tableNames)
            throws IOException, ExecutionException, InterruptedException {
        // "splitOutput" afaik not relevant for scylla (yet?...)
        forceKeyspaceCompaction(keyspaceName, tableNames);
    }

This just ignores the splitOutput option. It could do something like

throw new UnsupportedOperationException("Compact: 'split_output' (-s) option not supported");