
bazuka_joe
14.12.2017
04:47:35
вопрос по кассандре. Включил udf, создаю функцию, заливаю данные в таблицу, и не работает селект от туда:
cqlsh> CREATE KEYSPACE testkeyspace WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
cqlsh> USE testkeyspace ;
cqlsh:testkeyspace> CREATE OR REPLACE FUNCTION first_int(input set<int>) RETURNS NULL ON NULL INPUT RETURNS int LANGUAGE javascript AS '(function(){var result = 2;return result;})();';
cqlsh:testkeyspace> create table A (id int primary key, val set<int>);
cqlsh:testkeyspace> insert into A (id, val) values (1, {3,5,7,1});
cqlsh:testkeyspace> select first_int(val) from A where id = 1;
Traceback (most recent call last):
File "/usr/bin/cqlsh.py", line 1044, in perform_simple_statement
result = future.result()
File "/usr/share/cassandra/lib/cassandra-driver-internal-only-3.10.zip/cassandra-driver-3.10/cassandra/cluster.py", line 3826, in result
raise self._final_exception
FunctionFailure: Error from server: code=1400 [User Defined Function failure] message="execution of 'testkeyspace.first_int[set<int>]' failed: java.security.AccessControlException: access denied: ("java.lang.RuntimePermission" "accessClassInPackage.java.io")"
Cassandra 3.11.1