Hi Timo,

Thank you for the answers.  I have a few clarifications inlined.

On Mon, Oct 14, 2024 at 8:07 AM Timo Walther <twal...@apache.org> wrote:

> 3. Change of interfaces for multiple output tables
> Currently, I think using a STATEMENT SET should be enough for side
> output semantics. I have added an example in section 5.2.3.2 for that.
> We are still free to add more methods to Context, let the function
> implement additional interfaces or use more code generation together
> with @ArgumentHints.
>

Does the target_table need to be specified in the SELECT clause?  Or could
it read

EXECUTE STATEMENT SET BEGIN
   INSERT INTO main SELECT a, b FROM FunctionWithSideOutput(input => data,
uid = 'only_once') WHERE target_table = 'main';
   INSERT INTO side SELECT a, b FROM FunctionWithSideOutput(input => data,
uid = 'only_once') WHERE target_table = 'side';
END;

Separately, for clarity, it seems like the two target_table could have
separate schemas defined.


> 10. Support for State TTL
> Supporting state TTL will be easy. We just need to add a parameter to
> @StateHint and pass it through.
>

If PTFs can have state, I'd be strongly in favor of doing any interface /
base work we need in the initial implementation so that state size can be
managed.  If it is just sufficient to have hints in the interface, awesome!

Cheers,

Jim

Reply via email to