cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michaël Figuière (JIRA) <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-9243) Literals should be valid selectors in SELECT statements
Date Sat, 25 Apr 2015 04:42:39 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-9243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michaël Figuière updated CASSANDRA-9243:
----------------------------------------
    Description: 
Literals are currently not acceptable selectors in {{SELECT}} statements:

{noformat}
<selector> ::= <identifier>
             | WRITETIME '(' <identifier> ')'
             | TTL '(' <identifier> ')'
             | <function> '(' (<selector> (',' <selector>)*)? ')'
{noformat}

This wasn't a big deal up to now as it wasn't very useful for users, but with UDFs being added
in Cassandra 3.0, this means that literals aren't valid parameters of function. I believe
it would actually be useful for several use cases:
* To allow developers to test their own functions without having to set a value to a column
to then pass it as an argument to the function.
* To make it possible to write function that require a constant parameter such as {{pow(int,
int) -> int}} or {{contains(set<text>, text) -> boolean}}.

Additionally, this limitation is an inconsistency as literals are allowed in functions when
used in {{INSERT}} statements.

  was:
Literals are currently not acceptable selectors in {{SELECT}} statements:

{noformat}
<selector> ::= <identifier>
             | WRITETIME '(' <identifier> ')'
             | TTL '(' <identifier> ')'
             | <function> '(' (<selector> (',' <selector>)*)? ')'
{noformat}

This wasn't a big deal up to now as it wasn't very useful for users, but with UDFs being added
in Cassandra 3.0, this means that literals aren't valid parameters of function. I believe
it would actually be useful for several use cases:
* To allow developers to test their own functions without having to set a value to a column
to then pass it as an argument to the function.
* To make it possible to write function that require a constant parameter such as {{pow(int,
int) -> int}} or {{contains(set<text>, text) -> boolean}}.


> Literals should be valid selectors in SELECT statements
> -------------------------------------------------------
>
>                 Key: CASSANDRA-9243
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9243
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Michaël Figuière
>            Priority: Minor
>
> Literals are currently not acceptable selectors in {{SELECT}} statements:
> {noformat}
> <selector> ::= <identifier>
>              | WRITETIME '(' <identifier> ')'
>              | TTL '(' <identifier> ')'
>              | <function> '(' (<selector> (',' <selector>)*)? ')'
> {noformat}
> This wasn't a big deal up to now as it wasn't very useful for users, but with UDFs being
added in Cassandra 3.0, this means that literals aren't valid parameters of function. I believe
it would actually be useful for several use cases:
> * To allow developers to test their own functions without having to set a value to a
column to then pass it as an argument to the function.
> * To make it possible to write function that require a constant parameter such as {{pow(int,
int) -> int}} or {{contains(set<text>, text) -> boolean}}.
> Additionally, this limitation is an inconsistency as literals are allowed in functions
when used in {{INSERT}} statements.



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

Mime
View raw message