[ https://issues.apache.org/jira/browse/CASSANDRA-16836?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Berenguer Blasi updated CASSANDRA-16836: ---------------------------------------- Test and Documentation Plan: Unit tests are included. See PR for CI. (was: Unit tests are included) > Materialized views incorrect quoting of UDF > ------------------------------------------- > > Key: CASSANDRA-16836 > URL: https://issues.apache.org/jira/browse/CASSANDRA-16836 > Project: Cassandra > Issue Type: Bug > Components: Feature/Materialized Views > Reporter: Berenguer Blasi > Assignee: Berenguer Blasi > Priority: Normal > Fix For: 4.1, 3.11.x, 4.x > > > Creating a MV with a UDF needing quotes will explode on inserts after restart > > {code:sql} > create keyspace test WITH replication = {'class':'SimpleStrategy', > 'replication_factor' : 3}; > use test; > CREATE TABLE t (k int PRIMARY KEY, v int); > CREATE FUNCTION "Double" (input int) > CALLED ON NULL INPUT > RETURNS int > LANGUAGE java > AS 'return input*2;'; > CREATE MATERIALIZED VIEW mv AS SELECT * FROM t > WHERE k < test."Double"(2) > AND k IS NOT NULL > AND v IS NOT NULL > PRIMARY KEY (v, k); > {code} > Now restart the node, run an insert and you get an error > {noformat} > INSERT INTO t(k, v) VALUES (3, 1); > ERROR [MutationStage-2] 2021-08-10 09:55:56,662 StorageProxy.java:1551 - > Failed to apply mutation locally : > org.apache.cassandra.exceptions.InvalidRequestException: Unknown function > test.double called > at > org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest(RequestValidations.java:217) > at > org.apache.cassandra.cql3.functions.FunctionCall$Raw.prepare(FunctionCall.java:155) > at > org.apache.cassandra.cql3.SingleColumnRelation.toTerm(SingleColumnRelation.java:123) > at > org.apache.cassandra.cql3.SingleColumnRelation.newSliceRestriction(SingleColumnRelation.java:231) > at org.apache.cassandra.cql3.Relation.toRestriction(Relation.java:144) > at > org.apache.cassandra.cql3.restrictions.StatementRestrictions.<init>(StatementRestrictions.java:188) > at > org.apache.cassandra.cql3.restrictions.StatementRestrictions.<init>(StatementRestrictions.java:135) > at > org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepareRestrictions(SelectStatement.java:1067) > at > org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:937) > at org.apache.cassandra.db.view.View.getSelectStatement(View.java:180) > at org.apache.cassandra.db.view.View.getReadQuery(View.java:204) > at > org.apache.cassandra.db.view.TableViews.updatedViews(TableViews.java:368) > at > org.apache.cassandra.db.view.ViewManager.updatesAffectView(ViewManager.java:85) > at org.apache.cassandra.db.Keyspace.applyInternal(Keyspace.java:538) > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:513) > at org.apache.cassandra.db.Mutation.apply(Mutation.java:215) > at org.apache.cassandra.db.Mutation.apply(Mutation.java:220) > at org.apache.cassandra.db.Mutation.apply(Mutation.java:229) > at > org.apache.cassandra.service.StorageProxy$4.runMayThrow(StorageProxy.java:1545) > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2324) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:162) > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:134) > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:119) > at > io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) > at java.lang.Thread.run(Thread.java:748) > WriteFailure: Error from server: code=1500 [Replica(s) failed to execute > write] message="Operation failed - received 0 responses and 1 failures: > UNKNOWN from localhost/127.0.0.1:7000" info={'consistency': 'ONE', > 'required_responses': 1, 'received_responses': 0, 'failures': 1, > 'error_code_map': {'127.0.0.1': '0x0000'}} > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org