Aleksey Yeschenko created CASSANDRA-9665:
--------------------------------------------
Summary: Improve handling of UDF and UDA metadata
Key: CASSANDRA-9665
URL: https://issues.apache.org/jira/browse/CASSANDRA-9665
Project: Cassandra
Issue Type: Improvement
Reporter: Aleksey Yeschenko
Assignee: Aleksey Yeschenko
Fix For: 3.0 beta 1
A while ago we decided to make all functions and types keyspace local, but
haven't updated our assumption in the code accordingly.
One consequence is that in addition to {{Schema}} and {{KSMetaData}} we got
ourselves a completely separate registry singleton for built-in functions,
UDFs, and UDAs - the {{Functions}} class.
The linked branch makes UDAs and UDFs be a part of {{KSMetaData}}, as they
should be, and gets rid of the old {{Functions}} class.
A new {{Functions}} class is introduced - an immutable container for a given
keyspace's functions, and all the definitions are now spread between the
keyspaces.
This sneaks in a bit of {{CASSANDRA-9425}}, makes {{CASSANDRA-9367}} easier,
and is a minore pre-requisite for a proper implementation of {{CASSANDRA-6717}}.
On top of Sylvain's 8099 branch, with CASSANDRA-9542 cherry-picked.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)