[ https://issues.apache.org/jira/browse/CASSANDRA-16048?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17180022#comment-17180022 ]
Jordan West commented on CASSANDRA-16048: ----------------------------------------- Thanks for the input [~slebresne]. I was hoping you would chime in. I'm currently working on a plan for migrating a rather large fleet off of {{COMPACT STORAGE}} and found this approach to reduce the burden significantly (my findings are that the "shape" of COMPACT STORAGE table addressed by this patch is very common). Each additional out of band process that needs to be performed before the upgrade adds to the burden of moving to 4.0 and having a safe way that operators don't have to think about is helpful. However, I do agree its unfortunate we can't do this for all COMPACT STORAGE tables so that we have a unified story and I am +1 on the documentation reading something like to "you should drop COMPACT STORAGE manually by yourself before upgrading to 4.0 -- see CASSANDRA-16048 for potential alternatives". Regarding the DENSE flag, this is the same as if "DROP COMPACT STORAGE" was run, and the behavior prior to this patch is that the database would fail to start, so I'm not sure there will be much surprise to the user or that its of much concern. I did consider putting the patch behind a flag that defaulted to off but the semantics of flipping that flag sometime after the upgrade are even more confusing imo. As an aside, I am also concerned about the current behavior that we halt the database from starting when we detect compact storage tables but I need to investigate more what escape hatches exist before filing anything. > Safely Ignore Compact Storage Tables Where Users Have Defined Clustering and > Value Columns > ------------------------------------------------------------------------------------------ > > Key: CASSANDRA-16048 > URL: https://issues.apache.org/jira/browse/CASSANDRA-16048 > Project: Cassandra > Issue Type: Improvement > Components: Legacy/CQL > Reporter: Jordan West > Assignee: Jordan West > Priority: Normal > Fix For: 4.0-beta > > > Some compact storage tables, specifically those where the user has defined > both at least one clustering and the value column, can be safely handled in > 4.0 because besides the DENSE flag they are not materially different post 3.0 > and there is no visible change to the user facing schema after dropping > compact storage. We can detect this case and allow these tables to silently > drop the DENSE flag while still throwing a start-up error for COMPACT STORAGE > tables that don’t meet the criteria. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org