cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adam Holmberg (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-11004) LWT results '[applied]' column name collision
Date Tue, 19 Jan 2016 15:27:39 GMT

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

Adam Holmberg commented on CASSANDRA-11004:
-------------------------------------------

I see your point. Nobody ever said the names would be unique. It's a deficiency in the Python
driver that will not be addressed in the current row factories that return {{dict}} or {{namedtuple}}
for rows. cqlsh can be updated to use a different row factory to keep the names from colliding.

> LWT results '[applied]' column name collision
> ---------------------------------------------
>
>                 Key: CASSANDRA-11004
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11004
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Adam Holmberg
>            Priority: Minor
>             Fix For: 4.x
>
>
> LWT requests return a not-well-documented single row result with a boolean {{\[applied]}}
column and optional column states.
> If the table happens to have a column named {{\[applied]}}, this causes a name collision.
There is no error, but the {{\[applied]}} flag is not available.
> {code}
> cassandra@cqlsh:test> CREATE TABLE test (k int PRIMARY KEY , "[applied]" int);
> cassandra@cqlsh:test> INSERT INTO test (k, "[applied]") VALUES (2, 3) IF NOT EXISTS
;
>  [applied]
> -----------
>       True
> cassandra@cqlsh:test> INSERT INTO test (k, "[applied]") VALUES (2, 3) IF NOT EXISTS
;
>  [applied] | k
> -----------+---
>          3 | 2
> {code}
> I doubt this comes up much (at all) in practice, but thought I'd mention it. 
> One alternative approach might be to add a LWT result type ([flag|https://github.com/apache/cassandra/blob/cassandra-3.0/doc/native_protocol_v4.spec#L518-L522])
that segregates the "applied" flag information optional row results.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message