[ https://issues.apache.org/jira/browse/CASSANDRA-9457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14559670#comment-14559670 ]
Robert Stupp commented on CASSANDRA-9457: ----------------------------------------- Added a {{isEmptyValueMeaningless()}} method to {{AbstractType}}, which defaults to {{false}} (and is overridden on old types to return {{true}}). Also added a unit test to check that behavior (incl a custom type). Waiting for build#5 on cassci. [testall #5|http://cassci.datastax.com/view/Dev/view/snazy/job/snazy-9457-udf-empty-string-testall/5/] [dtest #5|http://cassci.datastax.com/view/Dev/view/snazy/job/snazy-9457-udf-empty-string-dtest/5/] > Empty INITCOND treated as null in aggregate > ------------------------------------------- > > Key: CASSANDRA-9457 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9457 > Project: Cassandra > Issue Type: Bug > Components: Core > Reporter: Olivier Michallat > Assignee: Robert Stupp > Priority: Minor > Fix For: 2.2.0 rc1 > > > Given the following test data: > {code} > cqlsh:test> create table foo(k int, v int, primary key(k,v)); > cqlsh:test> insert into foo(k,v) values(1,1); > cqlsh:test> insert into foo(k,v) values(1,2); > cqlsh:test> insert into foo(k,v) values(1,3); > {code} > And the following aggregate definition: > {code} > cqlsh:test> CREATE FUNCTION cat(s text, v int) > RETURNS NULL ON NULL INPUT > RETURNS text > LANGUAGE java > AS 'return s + v;'; > cqlsh:test> CREATE AGGREGATE cats(int) SFUNC cat STYPE text INITCOND ''; > {code} > The following should return '123', but it returns null: > {code} > cqlsh:test> select cats(v) from foo where k = 1; > test.cats(v) > --------------- > {code} > The empty INITCOND is treated as null, and the SFUNC is never called. -- This message was sent by Atlassian JIRA (v6.3.4#6332)