DOAN DuyHai created CASSANDRA-10783:
---------------------------------------
Summary: Allow literal value as parameter of UDF & UDA
Key: CASSANDRA-10783
URL: https://issues.apache.org/jira/browse/CASSANDRA-10783
Project: Cassandra
Issue Type: Improvement
Components: CQL
Environment: Cassandra 2.2.3
Reporter: DOAN DuyHai
Fix For: 2.2.3
I have defined the following UDF
{code:sql}
CREATE OR REPLACE FUNCTION maxOf(current int, testValue int) RETURNS NULL ON
NULL INPUT
RETURNS int
LANGUAGE java
AS 'return Math.max(current,testValue);'
CREATE TABLE maxValue(id int primary key, val int);
INSERT INTO maxValue(id, val) VALUES(1, 100);
SELECT maxOf(val, 101) FROM maxValue WHERE id=1;
{code}
I got the following error message:
{code}
SyntaxException: <ErrorMessage code=2000 [Syntax error in CQL query]
message="line 1:19 no viable alternative at input '101' (SELECT maxOf(val1,
[101]...)">
{code}
It would be nice to allow literal value as parameter of UDF and UDA too.
I was thinking about an use-case for an UDA groupBy() function where the end
user can *inject* at runtime a literal value to select which aggregation he
want to display, something similar to GROUP BY ... HAVING <filter clause>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)