[
https://issues.apache.org/jira/browse/CASSANDRA-12423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15434242#comment-15434242
]
Stefania commented on CASSANDRA-12423:
--------------------------------------
Thanks for the review!
I've renamed {{INCL_END_BOUND_EOC_0}} to {{END_BOUND_EOC_0}} and I've updated
the comment as you suggested. I appreciate your explanation and your test as
the exact behavior wasn't 100% clear to me as well.
I've picked up your test in [this
branch|https://github.com/stef1927/cassandra-dtest/commits/12423] and I will
create a pull request shortly after resolving this ticket.
In terms of mixed-version clusters, I don't think we can risk deserialization
exceptions and the second option is not ideal, plus it's risky to trust people
to do the right thing. What we want is to ideally detect a rolling upgrade with
other 3.0.x or 3.x hosts without the fix and disable this fix until the rolling
upgrade is completed. If range tombstones with EOC=0 are uncommon amongst the
majority of users, we could simply put the fix behind a flag and tell people
who have EOC=0 range tombstones to enable the flag after the rolling upgrade is
complete but before upgrading sstables. This would make it safer to deploy this
in 3.0.x as well as 3.x. The price is inconvenience for the users affected, but
given this is a thrift issue, I would expect those users to be experienced
enough to cope, provided we document it well in NEWS.TXT. What do you think?
> Cells missing from compact storage table after upgrading from 2.1.9 to 3.7
> --------------------------------------------------------------------------
>
> Key: CASSANDRA-12423
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12423
> Project: Cassandra
> Issue Type: Bug
> Reporter: Tomasz Grabiec
> Assignee: Stefania
> Attachments: 12423.tar.gz
>
>
> Schema:
> {code}
> create table ks1.test ( id int, c1 text, c2 text, v int, primary key (id, c1,
> c2)) with compact storage and compression = {'sstable_compression': ''};
> {code}
> sstable2json before upgrading:
> {code}
> [
> {"key": "1",
> "cells": [["","0",1470761440040513],
> ["a","asd",2470761440040513,"t",1470764842],
> ["asd:","0",1470761451368658],
> ["asd:asd","0",1470761449416613]]}
> ]
> {code}
> Query result with 2.1.9:
> {code}
> cqlsh> select * from ks1.test;
> id | c1 | c2 | v
> ----+-----+------+---
> 1 | | null | 0
> 1 | asd | | 0
> 1 | asd | asd | 0
> (3 rows)
> {code}
> Query result with 3.7:
> {code}
> cqlsh> select * from ks1.test;
> id | 6331 | 6332 | v
> ----+------+------+---
> 1 | | null | 0
> (1 rows)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)