[
https://issues.apache.org/jira/browse/CASSANDRA-6869?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sylvain Lebresne updated CASSANDRA-6869:
----------------------------------------
Attachment: (was: 6869.txt)
> Broken 1.2 sstables support in 2.1
> ----------------------------------
>
> Key: CASSANDRA-6869
> URL: https://issues.apache.org/jira/browse/CASSANDRA-6869
> Project: Cassandra
> Issue Type: Bug
> Reporter: Aleksey Yeschenko
> Assignee: Sylvain Lebresne
> Fix For: 2.1 beta2
>
> Attachments: 0001-Drop-support-for-pre-2.0-sstables.txt,
> 0002-Check-for-remaining-1.2-hints-when-upgrading-to-2.1.txt,
> 0003-Remove-remnant-of-pre-2.0-messaging-format.txt
>
>
> CASSANDRA-5417 has broken 1.2 (ic) sstables support in at least two ways.
> 1. CFMetaData.getOnDiskSerializer(), used by SSTableNamesIterator and
> IndexedSliceReader, doesn't account for pre-2.0 supercolumn sstables
> 2. More importantly, ACCNT.CompositeDeserializer doesn't handle ic tables'
> cell counts, and maybeReadNext() might throw EOFException while expecting the
> partition end marker. SimpleDeserializer is likely just as broken.
> I'd expect more issues like this, but less obvious, in the code, and thus am
> torn between forcing people to run upgradesstables on 2.0 and actually fixing
> these issues, and hoping that we haven't missed anything.
> Implementing a supercolumn aware AtomDeserializer is not hard, fixing
> CompositeDeserializer and SimpleDeserializer isn't very hard either, but I
> really am worried about stuff that's less obvious. Plus, if we drop that
> support, we can get rid of some legacy supercolumn code in 2.1. Minus,
> obviously, is a bit of extra pain for 2.0->2.1 upgraders still having 1.2-
> sstables around.
--
This message was sent by Atlassian JIRA
(v6.2#6252)