SchemaChangeListener not invoked for Functions or Aggregates having UDT arguments

Description

Dropping a function or aggregate that has an argument of type UDT is not triggering schema change listeners in 3.0.0-alpha5.

Below is an example script that, when run, does not trigger the SchemaChangeListener methods onFunctionRemoved or onAggregateRemoved.

Doing a little bit of digging it may be a discrepancy in how the function/aggregate signatures are handled in the metadata vs the schema change mechanism.

After running DROP AGGREGATE phone_number_count; and looking at the result of this line in Cluster.handle :

I observe that Metadata.fullFunctionName returns the value:

while the keyspace aggregates hashmap contains:

The result here is that the removedAggregate variable is null and therefore the trigger of AggregateRemoved is skipped.

This is the test script I'm using:

Environment

None

Pull Requests

None

Activity

Show:
Alex Popescu
January 15, 2016, 9:51 AM

Should this be marked for 2.1.x too?

Olivier Michallat
January 15, 2016, 10:34 AM

functions and aggregates are 3.0-only features.

Fixed

Assignee

Unassigned

Reporter

Dan Jatnieks

Labels

None

PM Priority

None

Reproduced in

None

Affects versions

Fix versions

Pull Request

None

Doc Impact

None

Size

None

External issue ID

None

External issue ID

None

Components

Priority

Major
Configure