Thanks for the heads up. There was a good reason that we marked RepeatUnion 
experimental: so that we can make these improvements without anyone 
complaining. I welcome these changes evolving RepeatUnion into a more useful 
feature.

By the way, in Morel I am having some deep discussions about the best way to 
surface ‘recursive’ or ‘iterative’ or ‘fixed point’ queries should be surfaced 
in a relational/functional language [1]. Morel’s goal is to execute programs 
both locally and via Calcite relational algebra, so Morel will at some point 
use RepeatUnion.

Julian

[1] https://github.com/julianhyde/morel/issues/81 
<https://github.com/julianhyde/morel/issues/81>   

> On Jan 17, 2022, at 8:49 AM, Ruben Q L <[email protected]> wrote:
> 
> Hello everyone,
> 
> I am not sure if anyone else (apart from my downstream project) is using
> RepeatUnion and associated operators to build recursive unions
> (experimental feature implemented via [1]), but just in case: I am
> considering a patch to fix some known issues ([2] & [3]) on the current
> implementation.
> This patch might potentially break the current contract of this operator,
> so if you think that you may be impacted by this change, please do not
> hesitate to take a look at the PR [4] and contribute to the discussion in
> there.
> 
> Thanks and best regards,
> Ruben
> 
> [1] https://issues.apache.org/jira/browse/CALCITE-2812
> [2] https://issues.apache.org/jira/browse/CALCITE-3673
> [3] https://issues.apache.org/jira/browse/CALCITE-4054
> [4] https://github.com/apache/calcite/pull/2690

Reply via email to