cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksey Yeschenko (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-5576) CREATE/DROP TRIGGER in CQL
Date Sat, 15 Jun 2013 04:53:21 GMT

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

Aleksey Yeschenko commented on CASSANDRA-5576:
----------------------------------------------

Yes, options should definitely be a map<text, text>. Question is, should class be a
separate column or should it be simply one of the options in that map.

Cases where class is part of the options and not a separate column:
- custom 2i (schema_columns.index_options)
- compression (schema_columnfamilies.compression_parameters)

Cases where class is a separate column:
- replication (schema_keyspaces.strategy_class)
- compaction (schema_columnfamilies.compaction_strategy_class)

In the last two cases, even though they are stored separately, in CQL3 CREATE/ALTER the class
is still conceptually part of the options map:
- CREATE KEYSPACE <name> WITH replication = {'class': 'path.to.strategy.class', 'option1':
'value1', 'optionX': ...}
- ALTER TABLE <name> WITH compaction = {'class': 'SizeTieredCompactionStrategy', 'option1':
'value1', 'optionX': ...}

Now, once we add parameters support to triggers, we could just add trigger_options map<text,
text> and to keep all but class there. Adding columns to system tables is okay, dropping
them isn't. But adding trigger_options map<text,text> right now and storing the class
there (with 'class' key) will let us to leave schema_triggers schema like this forever, future-proofing
it (this is what I suggested in https://issues.apache.org/jira/browse/CASSANDRA-5576?focusedCommentId=13681562&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13681562
and in https://issues.apache.org/jira/browse/CASSANDRA-5576?focusedCommentId=13669381&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13669381
before that).
                
> CREATE/DROP TRIGGER in CQL
> --------------------------
>
>                 Key: CASSANDRA-5576
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5576
>             Project: Cassandra
>          Issue Type: Bug
>          Components: API, Core
>            Reporter: Jonathan Ellis
>            Assignee: Vijay
>             Fix For: 2.0
>
>


--
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

Mime
View raw message