You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2012/11/07 19:02:13 UTC

[jira] [Commented] (CASSANDRA-4929) Deal with broken ALTER DROP support in CQL3

    [ https://issues.apache.org/jira/browse/CASSANDRA-4929?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13492549#comment-13492549 ] 

Jonathan Ellis commented on CASSANDRA-4929:
-------------------------------------------

Doesn't solution 2 have the problem that we'd be stuck with a "wart" on the language that doesn't make sense anymore post-1.2?  ("mispelled a column" should properly be dealt with by supporting ALTER ... RENAME, for instance.)
                
> Deal with broken ALTER DROP support in CQL3
> -------------------------------------------
>
>                 Key: CASSANDRA-4929
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4929
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.2.0 beta 1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>             Fix For: 1.2.0 rc1
>
>
> Currently, {{ALTER DROP}} only remove the metadata for the column, making it unavailable, but don't reclaim the data. This is unintuive and CASSANDRA-3919 is opened to fix it. However, that later issue won't make it for 1.2, and I think we should be very careful into shipping 1.2 with the current behavior because 1) it's unintuitive and 2) as unintuitive as it is, we don't want people to start relying on that behavior. So I thing we should do one of:
> * remove support for {{ALTER DROP}} until CASSANDRA-3919 reintroduce it. After all, there is no real performance impact in keeping a colum that you don't use and if you really really want to get rid of the metadata, you still have the workaround of trashing the schema and recreating it without that column (obviously not user friendly, but at least it's vaguely possible).
> * add a specific syntax for the current behavior of {{ALTER DROP}}, one that clearly imply that the data is not deleted, if we consider that this behavior can be sometimes useful (that is, even after CASSANDRA-3919 is resolved). One such syntax could one of (not sure which one I prefer):
> {noformat}
> ALTER TABLE foo DROP my_column SCHEMA ONLY
> ALTER TABLE foo DROP my_column KEEP DATA
> {noformat}
> I have a slight preference for solution 2, but honestly because it will it easier to drop a column you've just added but maybe mispelled the name until CASSANDRA-3919. Once CASSANDRA-3919 is in, I'm not sure this will be so useful anymore.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira