cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sam Tunnicliffe (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-9166) Prepared statements using functions in collection literals aren't invalidated when functions are dropped
Date Fri, 10 Apr 2015 12:09:12 GMT
Sam Tunnicliffe created CASSANDRA-9166:
------------------------------------------

             Summary: Prepared statements using functions in collection literals aren't invalidated
when functions are dropped
                 Key: CASSANDRA-9166
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9166
             Project: Cassandra
          Issue Type: Bug
            Reporter: Sam Tunnicliffe
             Fix For: 3.0


When a function is dropped, any prepared statements which reference it need to be removed
from the prepared statement cache. 
The default implementation of {{Term#usesFunction}} in {{Term.NonTerminal}} is not overriden
in all the places it should be. The {{DelayedValue}} classes in {{Lists}}, {{Sets}}, {{Maps}}
and {{Tuples}} may all make use of function calls.

{code}
CREATE KEYSPACE ks WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
CREATE TABLE ks.t1 (k int PRIMARY KEY, v list<int>);
CREATE FUNCTION ks.echo_int(input int) RETURNS int LANGUAGE javascript AS 'input';
{code}
a prepared statement of the form:
{code}
INSERT INTO ks.t1 (k, v) VALUES (?, [ks.echo_int(?)]);
{code}
should be dropped when {{ks.echo_int(int)}} is, but currently that isn't the case.




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

Mime
View raw message