OSDir


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: UDF


Hi Robert,

Thanks for taking on this work. Is this message a heads up that a patch is
coming/complete, or to spawn a discussion about including this in 4.0?

Thanks,

-Jason

On Tue, Sep 11, 2018 at 2:32 AM, Robert Stupp <snazy@xxxxxxxx> wrote:

> 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.
>
> A working prototype is in this branch: https://github.com/snazy/
> cassandra/tree/feature/remove-udf-driver-dep-trunk <
> 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).
>
> Robert
>
> —
> Robert Stupp
> @snazy
>
>