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
