如何在ApacheCassandra中创建javascript udf
我不熟悉ApacheCassandra和javascript,我需要在ApacheCassandra中创建javascript udf。我在Cassandra中创建了一个简单的udf,但是我无法在查询中调用该函数,因为会弹出一个错误 以下是与我的问题有关的所有细节 我的桌子看起来像这样如何在ApacheCassandra中创建javascript udf,javascript,cassandra,user-defined-functions,Javascript,Cassandra,User Defined Functions,我不熟悉ApacheCassandra和javascript,我需要在ApacheCassandra中创建javascript udf。我在Cassandra中创建了一个简单的udf,但是我无法在查询中调用该函数,因为会弹出一个错误 以下是与我的问题有关的所有细节 我的桌子看起来像这样 CREATE OR REPLACE FUNCTION demojs (input int) CALLED ON NULL INPUT RETURNS int LANGUAGE javas
CREATE OR REPLACE FUNCTION demojs (input int)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE javascript AS 'function(input){
return input;
}';
CREATE OR REPLACE FUNCTION demojs (input int)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE javascript AS 'input;';
我还创建了一个关于年龄列的索引
CREATE INDEX age_index ON test.student (age);
我的函数如下所示
CREATE OR REPLACE FUNCTION demojs (input int)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE javascript AS 'function(input){
return input;
}';
CREATE OR REPLACE FUNCTION demojs (input int)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE javascript AS 'input;';
我的问题是
select * from student where age=demojs(22);
当我尝试执行查询时,我得到了以下错误
回溯(最近一次调用):文件“C:\Program”
文件\apache-cassandra-3.11.6\bin\cqlsh.py”,第1050行,在
执行简单语句
result=future.result()文件“C:\Program Files\apache-cassandra-3.11.6\bin..\lib\cassandra-driver-internal-only-3.11.0-bb96859b.zip\cassandra-driver-3.11.0-bb96859b\cassandra\cluster.py”,
第3925行,结果为
自我提升。_final_异常函数失败:来自服务器的错误:code=1400[用户定义函数失败]message=“执行
“test.demojs[int]”失败:
com.datastax.driver.core.exceptions.InvalidTypeException:无效
CQL类型int的值“
任何人都可以告诉我这里做错了什么,这将非常有帮助函数的主体将是这样的
CREATE OR REPLACE FUNCTION demojs (input int)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE javascript AS 'function(input){
return input;
}';
CREATE OR REPLACE FUNCTION demojs (input int)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE javascript AS 'input;';