[
https://issues.apache.org/jira/browse/ARROW-16211?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17610963#comment-17610963
]
Yaron Gvili commented on ARROW-16211:
-------------------------------------
Consider a case where X, Y, and Z are disjoint sets of functions. One can
register (the functions of) X in registry 1, then register Y in registry 2
whose parent is registry 1, and finally register Z in registry 3 whose parent
is registry 2. With respect to the case described by Vibhata, I believe the
default registry corresponds to registry 1, the first subset of functions
corresponds to Y, and the second to Z. This works nicely when X, Y, and Z are
known upfront; otherwise, one may need to register again. For example, suppose
Y1 and Y2 are disjoint sets of functions whose union is Y, and one wants to
register functions on top of those of X and Y1, then one would need to create a
fresh registry whose parent is registry 1, and register Y1 again on this fresh
registry. I think this is a reasonable result when not knowing upfront. In
general, considering registries have extended scopes, I think it is better to
create a fresh nested registry and keep it fixed while in use than to edit an
existing one using removals while in use.
> [C++][Python] Unregister compute functions
> ------------------------------------------
>
> Key: ARROW-16211
> URL: https://issues.apache.org/jira/browse/ARROW-16211
> Project: Apache Arrow
> Issue Type: Sub-task
> Components: C++, Python
> Reporter: Vibhatha Lakmal Abeykoon
> Priority: Major
>
> In general, when using UDFs, the user defines a function expecting a
> particular outcome. When building the program, there needs to be a way to
> update existing function kernels if it expands beyond what is planned before.
> In such situations, there should be a way to remove the existing definition
> and add a new definition. To enable this, the unregister functionality has to
> be included.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)