cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kaide Mu (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-11875) Create sstableconvert tool with support to ma format
Date Fri, 10 Jun 2016 16:10:21 GMT


Kaide Mu commented on CASSANDRA-11875:

bq. BigVersion.supportsWritingversion(version)
It is now implemented, now we can check if a version different from Version is supported for
writing, I use BigFormat.latestVersion.supportesWritingversion in StandaloneConverter to check
if a given version is supported.

bq. The idea is to abstract only the identical part, leaving specific parsing to each class
(so you can probably extract the parseArgs code from inside Options). 
By doing so I think we have to create a external Option or ConverterOption abstract class
andextend from them in StandaloneUpgrader or StandaloneConverter. Another way is making StandaloneConverter.Options
public. [~pauloricardomg] do you think is the right way?

bq. The testUnsupportedVersionShouldFail is failing, you should generally use this format
to assert that exceptions are thrown while making the test pass
This is also done, I'll submit a patch once previous issue is solved, but I'm not sure if
there is any other RuntimeException is thrown, do you think we should create a UnsupportedWritingExeption
to ensure it?


> Create sstableconvert tool with support to ma format
> ----------------------------------------------------
>                 Key: CASSANDRA-11875
>                 URL:
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Tools
>            Reporter: Paulo Motta
>            Assignee: Kaide Mu
>            Priority: Minor
>         Attachments: trunk-11875-WIP-V1.patch
> Currently {{Upgrader}} receives an sstable in any readable format, and writes into {{BigFormat.getLatestVersion()}}.
We should generalize it by making it receive a {{target}} version and probably also rename
it to {{SSTableConverter}}. 
> Based on this we can create an {{StandaloneDowngrader}} tool which will perform downgrade
of specified sstables to a target version. To start with, we should support only downgrading
to {{ma}} format (from current format {{mb}}), downgrade to any other version should be forbidden.
Since we already support serializing to "ma" we will not need to do any data conversion.
> We should also create a test suite that creates an sstable with data in the current format,
perform the downgrade, and verify data in the new format is correct. This will be the base
tests suite for more advanced conversions in the future.

This message was sent by Atlassian JIRA

View raw message