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:
Should this be marked for 2.1.x too?
functions and aggregates are 3.0-only features.