Thanks for the reply.

Talked with Alex in Slack and I was under the impression deleted rows were
handled differently on read.

 collect ideas about migration, cutoff date and final deprecation in a
> separate thread or a document.


+1

I am good bringing a subset back to ease upgrades to 4.0

On Thu, Oct 22, 2020 at 11:42 AM Oleksandr Petrov <
oleksandr.pet...@gmail.com> wrote:

> These are some great (albeit somewhat hard) questions!
>
> > * when you drop compact storage and have some SSTables stored in
> compact storage and some SSTables stored normally, how do we present data
> correctly?
>
> There is no difference in SSTable format between normal and compact
> storage, the difference is only in how Table Metadata is represented. In
> other words, in code.
>
> * does upgradesstables and/or compaction migrate off the compact
> storage format into the normal format?
>
> I think above answers this: the only way to migrate off compact storage is
> to change table metadata, and accept the differences mentioned above.
>
> * how do we know it is safe to remove?
>
> Maybe if we're explicit about it and say that, for example, by version X
> compact storage will not be supported at all, and document all the
> pitfalls, people will migrate their applications, one at a time. There's
> been a few suggestions about how to mitigate, including client options in
> 10857, and introducing "hiding" columns in 15811, and many more that were
> discussed but not implemented.
>
> Hope this won't discourage further discussions, but I suggest we keep this
> thread focused on pros/cons of a suggested intermediate solution (bring
> back a minimal subset of CS), and collect ideas about migration, cutoff
> date and final deprecation in a separate thread or a document. I personally
> do not have a full answer to "when it is safe to remove", and it seems like
> the best we can do is to create a clear procedure.
>
> On Thu, Oct 22, 2020 at 6:38 PM Ekaterina Dimitrova <e.dimitr...@gmail.com
> >
> wrote:
>
> > Definitely that is not off the table.
> > Also, we talked this morning for a plan for additional testing to be
> > created as part of CASSANDRA-15588
> >
> > On Thu, 22 Oct 2020 at 12:33, David Capwell <dcapw...@gmail.com> wrote:
> >
> > > I am in favor of bringing it back, but I do feel we should also plan
> how
> > to
> > > get it removed as well.
> > >
> > > Few examples, would love to see fleshed out
> > >
> > > * when you drop compact storage and have some SSTables stored in
> compact
> > > storage and some SSTables stored normally, how do we present data
> > > correctly?
> > > * does upgradesstables and/or compaction migrate off the compact
> storage
> > > format into the normal format?
> > > * how do we know it is safe to remove?
> > >
> > >
> > >
> > > On Thu, Oct 22, 2020 at 6:55 AM Ekaterina Dimitrova <
> > e.dimitr...@gmail.com
> > > >
> > > wrote:
> > >
> > > > Hi Alex,
> > > > Thanks for bringing this up.
> > > > I am with you for returning part of the code back and considering
> this
> > > as a
> > > > bug.
> > > > I truly believe it is too late in the release to document changed
> > > behavior.
> > > > I think this contradicts with the project’s promise for no breaking
> > > > changes. This should have been documented in alpha.
> > > > Best regards,
> > > > Ekaterina
> > > >
> > > > On Thu, 22 Oct 2020 at 3:20, Oleksandr Petrov <
> > > oleksandr.pet...@gmail.com>
> > > > wrote:
> > > >
> > > > > Since this is an important subject, I thought it also makes sense
> to
> > > > start
> > > > > a mailing list thread.
> > > > >
> > > > > You may know that in 4.0 there was a plan to drop compact storage
> and
> > > > > related code. However, there are several behavioural changes
> related
> > to
> > > > > compact storage, and difference in visible behaviour between
> "normal"
> > > and
> > > > > compact tables are larger than most of us have anticipated: we
> first
> > > > > thought there’ll be only “appearing column” in dense case, but
> > there’s
> > > > > implicit nulls in clusterings thing, and row vs column deletion
> now,
> > > TTL,
> > > > > and more.
> > > > >
> > > > > Some of the recent issues on the subject are: CASSANDRA-16048
> > > > > <https://issues.apache.org/jira/browse/CASSANDRA-16048>, which
> > allows
> > > to
> > > > > ignore these differences. The other one was an attempt to improve
> the
> > > > user
> > > > > experience of anyone still using compact storage: CASSANDRA-15811
> > > > > <https://issues.apache.org/jira/browse/CASSANDRA-15811>.
> > > > >
> > > > > Easily reproducible differences are:
> > > > >
> > > > > (1) hidden columns show up, which breaks SELECT * queries
> > > > > (2) DELETE v and UPDATE v WITH TTL would result into row removals
> in
> > > > > non-dense compact tables (CASSANDRA-16069
> > > > > <https://issues.apache.org/jira/browse/CASSANDRA-16069>)
> > > > > (3) INSERT allows skipping clusterings, which are filled with nulls
> > by
> > > > > default.
> > > > >
> > > > > Some of these are tricky to support, as 15811 has shown. Anyone who
> > > might
> > > > > want to upgrade to 4.0 while still using compact storage might be
> > > > affected
> > > > > by being forced into one of these behaviours.
> > > > >
> > > > > Possible solutions are to document these behaviours, or to bring
> > back a
> > > > > minimal set of COMPACT STORAGE and keep supporting these in 4.0
> > > > >
> > > > > It looks like it is possible to leave some of the functionality
> > related
> > > > to
> > > > > DENSE flag and allow it to be present in 4.0, but only for these
> > three
> > > > (and
> > > > > potential related, however not directly visible) cases.
> > > > >
> > > > > You can find more details on the subject here:
> > > > > https://issues.apache.org/jira/browse/CASSANDRA-16217
> > > > >
> > > > > Thank you,
> > > > >
> > > > > -- Alex
> > > > >
> > > >
> > >
> >
>
>
> --
> alex p
>

Reply via email to