cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tyler Hobbs (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-9232) "timestamp" is considered as a reserved keyword in cqlsh completion
Date Fri, 22 May 2015 22:12:17 GMT


Tyler Hobbs commented on CASSANDRA-9232:

I think the best option is to properly expose the keywords in the driver and use that in cqlsh
so that we can avoid maintaining multiple lists.  (The driver will need to stay updated for
{{DESCRIBE}} statements anyway.)

I suppose we should also consider tracking the keywords by Cassandra version so that when
we add new reserved keywords, we don't treat them as reserved in older Cassandra versions.
 However, I don't think it's necessarily a bad thing to preemptively treat keywords as reserved,
since users will need to deal with that before upgrading anyway.  So, maybe always using the
"newest" keyword list is okay.  What do you think?

The rest of your cleanup looks good to me so far.

> "timestamp" is considered as a reserved keyword in cqlsh completion
> -------------------------------------------------------------------
>                 Key: CASSANDRA-9232
>                 URL:
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Michaël Figuière
>            Assignee: Stefania
>            Priority: Trivial
>              Labels: cqlsh
>             Fix For: 3.x, 2.1.x
> cqlsh seems to treat "timestamp" as a reserved keyword when used as an identifier:
> {code}
> cqlsh:ks1> create table t1 (int int primary key, ascii ascii, bigint bigint, blob
blob, boolean boolean, date date, decimal decimal, double double, float float, inet inet,
text text, time time, timestamp timestamp, timeuuid timeuuid, uuid uuid, varchar varchar,
varint varint);
> {code}
> Leads to the following completion when building an {{INSERT}} statement:
> {code}
> cqlsh:ks1> insert into t1 (int, 
> "timestamp" ascii       bigint      blob        boolean     date        decimal     double
     float       inet        text        time        timeuuid    uuid        varchar     varint
> {code}
> "timestamp" is a keyword but not a reserved one and should therefore not be proposed
as a quoted string. It looks like this error happens only for timestamp. Not a big deal of
course, but it might be worth reviewing the keywords treated as reserved in cqlsh, especially
with the many changes introduced in 3.0.

This message was sent by Atlassian JIRA

View raw message