cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paulo Motta (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-8928) Add downgradesstables
Date Mon, 21 Mar 2016 16:48:25 GMT


Paulo Motta commented on CASSANDRA-8928:

Overall looks good. A few comments to improve your proposal:
* We should probably limit the scope from "ma" to "la" and "ka", and leave "jb" as an extra
if there's time. Given that "ka" is pretty much the same as "la", except for the file name
format, then the bulk of the work would be on downgrading from "ma" to "la".
* I think we can divide this proposal into two major milestones: PoC and Productization. In
the PoC milestone (midterm) you could deliver a basic sstabledowngrader tool supporting downgrade
from "ma" to "la", but without much attention to the framework aspect, basically hacking the
SStableScrubber tool and reusing existing code from previous versions to have a basic functional
version along with tests. In the second phase after you're more familiarized with the problem
you would refactor your initial PoC to deal with more complex scenarios (if there are any),
and extract version-independent structures and interfaces to facilitate adding support downgrading
to newer formats in the future, along with adding downgrade support to "ka" which should be
easy enough after you have downgrade to "la" in place. With that said, you would have the
following deliverables:
** sstabledowngrader tool with hard-coded downgrade support from "ma" to "la" (midterm)
** sstabledowngrader tool with extension points/flexible support to other sstable formats
+ documentation (final)
** comprehensive dtest suite for "ma" and "la" downgrade support with double cycle of upgrade/downgrade
based on CASSANDRA-10563  (final)
* You can probably move the code reading/familiarization from the coding period to the community
bonding period, to focus on your first deliverable in the coding period.

WDYT [~yukim]? Any other suggestion?

> Add downgradesstables
> ---------------------
>                 Key: CASSANDRA-8928
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Tools
>            Reporter: Jeremy Hanna
>            Priority: Minor
>              Labels: gsoc2016, mentor
> As mentioned in other places such as CASSANDRA-8047 and in the wild, sometimes you need
to go back.  A downgrade sstables utility would be nice for a lot of reasons and I don't know
that supporting going back to the previous major version format would be too much code since
we already support reading the previous version.

This message was sent by Atlassian JIRA

View raw message