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

Sylvain Lebresne commented on CASSANDRA-3783:
---------------------------------------------

bq. Could the "insert null" command behaves like a batch mutation ?

I'm not really sure what you mean here. For normal columns (the only ones we 
should care about in this ticket really), setting to null really mean deleting 
the column. There is no difficulty in doing that. But for collections, if there 
is no column internally, there is no element (even for lists, the internal 
column representing each element does not include the element index; that's why 
operation like 'setting by index' needs to read the full list, so it can find 
the element at the requested index by counting them), so we do need to have a 
column, but his "value" should mean "null".
                
> Add 'null' support to CQL 3.0
> -----------------------------
>
>                 Key: CASSANDRA-3783
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3783
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: API
>            Reporter: Sylvain Lebresne
>            Assignee: MichaƂ Michalski
>            Priority: Minor
>              Labels: cql3
>             Fix For: 1.2.3
>
>         Attachments: 3783-v2.patch, 3783-wip-v1.patch
>
>
> Dense composite supports adding records where only a prefix of all the 
> component specifying the key is defined. In other words, with:
> {noformat}
> CREATE TABLE connections (
>    userid int,
>    ip text,
>    port int,
>    protocol text,
>    time timestamp,
>    PRIMARY KEY (userid, ip, port, protocol)
> ) WITH COMPACT STORAGE
> {noformat}
> you can insert
> {noformat}
> INSERT INTO connections (userid, ip, port, time) VALUES (2, '192.168.0.1', 
> 80, 123456789);
> {noformat}
> You cannot however select that column specifically (i.e, without selecting 
> column (2, '192.168.0.1', 80, 'http') for instance).
> This ticket proposes to allow that though 'null', i.e. to allow
> {noformat}
> SELECT * FROM connections WHERE userid = 2 AND ip = '192.168.0.1' AND port = 
> 80 AND protocol = null;
> {noformat}
> It would then also make sense to support:
> {noformat}
> INSERT INTO connections (userid, ip, port, protocol, time) VALUES (2, 
> '192.168.0.1', 80, null, 123456789);
> {noformat}
> as an equivalent to the insert query above.

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

Reply via email to