Skip to content

Commit efed2f4

Browse files
committed
Add migration plan
1 parent 3ec0ad7 commit efed2f4

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

RFC-0012-built-in-native-function-namespace-manager.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,13 @@ this.memoizedFunctionsSupplier = Suppliers.memoize(this::bootstrapNamespace);
9494
9595
```
9696

97+
## Adoption Plan
98+
99+
In order to control rolling out this feature, add a new configuration file, like "etc/builtin-native-functions.properties". If the file exists, enable the feature. Otherwise, do not attempt to load any native functions as built in functions. Within the file, we can also add config that controls which type of functions use the worker implementation override or not. For example, only use worker implementation when there is a SQL implementation.
100+
101+
Once constant folding is enabled to C++ evaluation, this feature can be fully enabled to override all coordinator implementations. However, if this use case is not needed anymore, the feature can be removed, and we can set native.default to be default namespace to just use the existing native function namespace manager.
102+
103+
97104
## Test Plan
98105

99106
1. Unit test to invoke a SQL function that has a C++ implementation

0 commit comments

Comments
 (0)