Robert Stupp created CASSANDRA-14737:
----------------------------------------

             Summary: Limit the dependencies used by UDFs/UDAs
                 Key: CASSANDRA-14737
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14737
             Project: Cassandra
          Issue Type: Improvement
          Components: CQL
            Reporter: Robert Stupp
            Assignee: Robert Stupp
             Fix For: 4.0


In an effort to clean up our hygiene and limit the dependencies used by 
UDFs/UDAs, I think we should refactor the UDF code parts and remove the 
dependency to the Java Driver in that area without breaking existing UDFs/UDAs.
  
The patch is in [this 
branch|https://github.com/snazy/cassandra/tree/feature/remove-udf-driver-dep-trunk].
 The changes are rather trivial and provide 100% backwards compatibility for 
existing UDFs.
  
 The prototype copies the necessary parts from the Java Driver into the C* 
source tree to {{org.apache.cassandra.cql3.functions.types}} and adopts its 
usages - i.e. UDF/UDA code plus {{CQLSSTableWriter}} + 
{{StressCQLSSTableWriter}}. The latter two classes have a reference to UDF's 
{{UDHelper}} and had to be changed as well.
  
 Some functionality, like type parsing & handling, is duplicated in the code 
base with this prototype - once in the "current" source tree and once for UDFs. 
However, unifying the code paths is not trivial, since the UDF sandbox 
prohibits the use of internal classes (direct and likely indirect dependencies).
  
 /cc [~jbellis] 
  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to