You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by Gunnar Morling <gu...@googlemail.com.INVALID> on 2023/02/21 19:22:48 UTC

RECURSIVE keyword not supported?

Hi,

I'm trying to run the recursive example from the Calcite algebra docs [1],
but I'm always getting an error at the RECURSIVE keyword:

    WITH RECURSIVE aux(i) AS (
      VALUES (1)
      UNION ALL
      SELECT i+1 FROM aux WHERE i < 10
    )
    SELECT * FROM aux

    "Incorrect syntax near the keyword 'RECURSIVE' at line 1, column 6"

I saw this is considered an experimental feature for the time being, is
there some flag/option I need to specify when creating my connection to
enable support for recursive queries?

Thanks a lot for any help,

--Gunnar

[1] https://calcite.apache.org/docs/algebra.html#recursive-queries

Re: RECURSIVE keyword not supported?

Posted by Gunnar Morling <gu...@googlemail.com.INVALID>.
Hey Ruben, Stamatis,

Thanks a lot, please find a PR for that doc change here:

    https://github.com/apache/calcite/pull/3081

Happy to make any further changes as you see fit.

Best,

--Gunnar


Am Mi., 22. Feb. 2023 um 10:58 Uhr schrieb Stamatis Zampetakis <
zabetak@gmail.com>:

> Echoing Ruben; all contributions are welcome and much appreciated
> especially when it comes to documentation that can be easily left behind!
>
> Best,
> Stamatis
>
> On Wed, Feb 22, 2023 at 9:53 AM Ruben Q L <ru...@gmail.com> wrote:
>
> > Hello Gunnar,
> >
> > IIRC the idea when that doc [1] was written was providing an alternative
> > syntax that people would understand (since probably the RelBuilder
> example
> > would be too abstract or complex for most users).
> > Perhaps as it is written right now it can be misleading and we should
> > clarify that at the moment SQL is not supported for recursive queries,
> and
> > it is only shown for illustrative purposes.
> > Contributions are always welcome, including the documentation! Feel free
> to
> > open a PR to improve this part, I'll happily take a look at it.
> >
> > Best,
> > Ruben
> >
> > [1] https://github.com/apache/calcite/blob/main/site/_docs/algebra.md
> >
> >
> > On Wed, Feb 22, 2023 at 7:32 AM Gunnar Morling
> > <gu...@googlemail.com.invalid> wrote:
> >
> > > Hey Julien,
> > >
> > > Am Di., 21. Feb. 2023 um 23:01 Uhr schrieb Julian Hyde <
> jhyde@apache.org
> > >:
> > >
> > > > A classic problem of open source development. Should we accept a
> > > > contribution for recursive queries even though it doesn't have SQL
> > > > support? And if we choose to accept it without SQL support, do we
> show
> > > > the equivalent SQL in our documentation?
> > > >
> > >
> > > Yes, the struggle is real, and there's no simple answer. Being a
> > maintainer
> > > of multiple open-source projects myself, I very much can relate to
> that.
> > > FWIW, I think you made the right call by accepting the feature in its
> > > current state. It then comes down to expectation management, i.e. being
> > > very transparent about what is supported and what isn't.
> > >
> > > >
> > > > I agree that the documentation is a bit misleading. The caveats about
> > > > "experimental APIs" mostly cover it, but it should say that "WITH
> > > > RECURSIVE" SQL is not currently supported. But you are also
> > > > complaining that the free lunch has french fries and baked potatoes
> > > > but no mashed potatoes.
> > > >
> > >
> > > Ugh, now that's a bit harsh, don't you think? I've asked for
> > clarification
> > > about how to use this feature, and when learning that right now it
> isn't,
> > > I've offered to help clarify that fact in the doc (as much as I'd love
> > help
> > > building the actual feature, it's just beyond the scope of what my time
> > > currently allows for, unfortunately). I think that hardly qualifies as
> > > "complaining".
> > >
> > > Best,
> > >
> > > --Gunnar
> > >
> > > Julian
> > > >
> > > > On Tue, Feb 21, 2023 at 1:06 PM Gunnar Morling
> > > > <gu...@googlemail.com.invalid> wrote:
> > > > >
> > > > > Hey Ruben,
> > > > >
> > > > > Thanks a lot for the quick response! In that light, isn't having
> that
> > > SQL
> > > > > example in the docs a bit confusing then? Might be worth clarifying
> > for
> > > > the
> > > > > time being that this is a hypothetical syntax and recursive queries
> > are
> > > > > only supported in the RelBuilder API? Happy to send a PR for doing
> > that
> > > > doc
> > > > > update, if you think it makes sense and can point me to the source
> of
> > > > that
> > > > > page.
> > > > >
> > > > > Thanks again,
> > > > >
> > > > > --Gunnar
> > > > >
> > > > >
> > > > > Am Di., 21. Feb. 2023 um 20:56 Uhr schrieb Ruben Q L <
> > > rubenql@gmail.com
> > > > >:
> > > > >
> > > > > > Hello Gunnar,
> > > > > >
> > > > > > At the moment, recursive queries are only supported via
> RelBuilder
> > > > API, not
> > > > > > via SQL (the documentation shows the SQL equivalent to the
> > RelBuider
> > > > code
> > > > > > just below, but Calcite currently only supports the latter, not
> the
> > > > > > former).
> > > > > >
> > > > > > There is an old ticket about supporting this feature in SQL [1] ,
> > but
> > > > so
> > > > > > far no work has been done in this regard.
> > > > > >
> > > > > > Best regards,
> > > > > > Ruben
> > > > > >
> > > > > > [1] https://issues.apache.org/jira/browse/CALCITE-129
> > > > > >
> > > > > >
> > > > > > On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
> > > > > > <gu...@googlemail.com.invalid> wrote:
> > > > > >
> > > > > > > Hi,
> > > > > > >
> > > > > > > I'm trying to run the recursive example from the Calcite
> algebra
> > > docs
> > > > > > [1],
> > > > > > > but I'm always getting an error at the RECURSIVE keyword:
> > > > > > >
> > > > > > >     WITH RECURSIVE aux(i) AS (
> > > > > > >       VALUES (1)
> > > > > > >       UNION ALL
> > > > > > >       SELECT i+1 FROM aux WHERE i < 10
> > > > > > >     )
> > > > > > >     SELECT * FROM aux
> > > > > > >
> > > > > > >     "Incorrect syntax near the keyword 'RECURSIVE' at line 1,
> > > column
> > > > 6"
> > > > > > >
> > > > > > > I saw this is considered an experimental feature for the time
> > > being,
> > > > is
> > > > > > > there some flag/option I need to specify when creating my
> > > connection
> > > > to
> > > > > > > enable support for recursive queries?
> > > > > > >
> > > > > > > Thanks a lot for any help,
> > > > > > >
> > > > > > > --Gunnar
> > > > > > >
> > > > > > > [1]
> > https://calcite.apache.org/docs/algebra.html#recursive-queries
> > > > > > >
> > > > > >
> > > >
> > >
> >
>

Re: RECURSIVE keyword not supported?

Posted by Stamatis Zampetakis <za...@gmail.com>.
Echoing Ruben; all contributions are welcome and much appreciated
especially when it comes to documentation that can be easily left behind!

Best,
Stamatis

On Wed, Feb 22, 2023 at 9:53 AM Ruben Q L <ru...@gmail.com> wrote:

> Hello Gunnar,
>
> IIRC the idea when that doc [1] was written was providing an alternative
> syntax that people would understand (since probably the RelBuilder example
> would be too abstract or complex for most users).
> Perhaps as it is written right now it can be misleading and we should
> clarify that at the moment SQL is not supported for recursive queries, and
> it is only shown for illustrative purposes.
> Contributions are always welcome, including the documentation! Feel free to
> open a PR to improve this part, I'll happily take a look at it.
>
> Best,
> Ruben
>
> [1] https://github.com/apache/calcite/blob/main/site/_docs/algebra.md
>
>
> On Wed, Feb 22, 2023 at 7:32 AM Gunnar Morling
> <gu...@googlemail.com.invalid> wrote:
>
> > Hey Julien,
> >
> > Am Di., 21. Feb. 2023 um 23:01 Uhr schrieb Julian Hyde <jhyde@apache.org
> >:
> >
> > > A classic problem of open source development. Should we accept a
> > > contribution for recursive queries even though it doesn't have SQL
> > > support? And if we choose to accept it without SQL support, do we show
> > > the equivalent SQL in our documentation?
> > >
> >
> > Yes, the struggle is real, and there's no simple answer. Being a
> maintainer
> > of multiple open-source projects myself, I very much can relate to that.
> > FWIW, I think you made the right call by accepting the feature in its
> > current state. It then comes down to expectation management, i.e. being
> > very transparent about what is supported and what isn't.
> >
> > >
> > > I agree that the documentation is a bit misleading. The caveats about
> > > "experimental APIs" mostly cover it, but it should say that "WITH
> > > RECURSIVE" SQL is not currently supported. But you are also
> > > complaining that the free lunch has french fries and baked potatoes
> > > but no mashed potatoes.
> > >
> >
> > Ugh, now that's a bit harsh, don't you think? I've asked for
> clarification
> > about how to use this feature, and when learning that right now it isn't,
> > I've offered to help clarify that fact in the doc (as much as I'd love
> help
> > building the actual feature, it's just beyond the scope of what my time
> > currently allows for, unfortunately). I think that hardly qualifies as
> > "complaining".
> >
> > Best,
> >
> > --Gunnar
> >
> > Julian
> > >
> > > On Tue, Feb 21, 2023 at 1:06 PM Gunnar Morling
> > > <gu...@googlemail.com.invalid> wrote:
> > > >
> > > > Hey Ruben,
> > > >
> > > > Thanks a lot for the quick response! In that light, isn't having that
> > SQL
> > > > example in the docs a bit confusing then? Might be worth clarifying
> for
> > > the
> > > > time being that this is a hypothetical syntax and recursive queries
> are
> > > > only supported in the RelBuilder API? Happy to send a PR for doing
> that
> > > doc
> > > > update, if you think it makes sense and can point me to the source of
> > > that
> > > > page.
> > > >
> > > > Thanks again,
> > > >
> > > > --Gunnar
> > > >
> > > >
> > > > Am Di., 21. Feb. 2023 um 20:56 Uhr schrieb Ruben Q L <
> > rubenql@gmail.com
> > > >:
> > > >
> > > > > Hello Gunnar,
> > > > >
> > > > > At the moment, recursive queries are only supported via RelBuilder
> > > API, not
> > > > > via SQL (the documentation shows the SQL equivalent to the
> RelBuider
> > > code
> > > > > just below, but Calcite currently only supports the latter, not the
> > > > > former).
> > > > >
> > > > > There is an old ticket about supporting this feature in SQL [1] ,
> but
> > > so
> > > > > far no work has been done in this regard.
> > > > >
> > > > > Best regards,
> > > > > Ruben
> > > > >
> > > > > [1] https://issues.apache.org/jira/browse/CALCITE-129
> > > > >
> > > > >
> > > > > On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
> > > > > <gu...@googlemail.com.invalid> wrote:
> > > > >
> > > > > > Hi,
> > > > > >
> > > > > > I'm trying to run the recursive example from the Calcite algebra
> > docs
> > > > > [1],
> > > > > > but I'm always getting an error at the RECURSIVE keyword:
> > > > > >
> > > > > >     WITH RECURSIVE aux(i) AS (
> > > > > >       VALUES (1)
> > > > > >       UNION ALL
> > > > > >       SELECT i+1 FROM aux WHERE i < 10
> > > > > >     )
> > > > > >     SELECT * FROM aux
> > > > > >
> > > > > >     "Incorrect syntax near the keyword 'RECURSIVE' at line 1,
> > column
> > > 6"
> > > > > >
> > > > > > I saw this is considered an experimental feature for the time
> > being,
> > > is
> > > > > > there some flag/option I need to specify when creating my
> > connection
> > > to
> > > > > > enable support for recursive queries?
> > > > > >
> > > > > > Thanks a lot for any help,
> > > > > >
> > > > > > --Gunnar
> > > > > >
> > > > > > [1]
> https://calcite.apache.org/docs/algebra.html#recursive-queries
> > > > > >
> > > > >
> > >
> >
>

Re: RECURSIVE keyword not supported?

Posted by Ruben Q L <ru...@gmail.com>.
Hello Gunnar,

IIRC the idea when that doc [1] was written was providing an alternative
syntax that people would understand (since probably the RelBuilder example
would be too abstract or complex for most users).
Perhaps as it is written right now it can be misleading and we should
clarify that at the moment SQL is not supported for recursive queries, and
it is only shown for illustrative purposes.
Contributions are always welcome, including the documentation! Feel free to
open a PR to improve this part, I'll happily take a look at it.

Best,
Ruben

[1] https://github.com/apache/calcite/blob/main/site/_docs/algebra.md


On Wed, Feb 22, 2023 at 7:32 AM Gunnar Morling
<gu...@googlemail.com.invalid> wrote:

> Hey Julien,
>
> Am Di., 21. Feb. 2023 um 23:01 Uhr schrieb Julian Hyde <jh...@apache.org>:
>
> > A classic problem of open source development. Should we accept a
> > contribution for recursive queries even though it doesn't have SQL
> > support? And if we choose to accept it without SQL support, do we show
> > the equivalent SQL in our documentation?
> >
>
> Yes, the struggle is real, and there's no simple answer. Being a maintainer
> of multiple open-source projects myself, I very much can relate to that.
> FWIW, I think you made the right call by accepting the feature in its
> current state. It then comes down to expectation management, i.e. being
> very transparent about what is supported and what isn't.
>
> >
> > I agree that the documentation is a bit misleading. The caveats about
> > "experimental APIs" mostly cover it, but it should say that "WITH
> > RECURSIVE" SQL is not currently supported. But you are also
> > complaining that the free lunch has french fries and baked potatoes
> > but no mashed potatoes.
> >
>
> Ugh, now that's a bit harsh, don't you think? I've asked for clarification
> about how to use this feature, and when learning that right now it isn't,
> I've offered to help clarify that fact in the doc (as much as I'd love help
> building the actual feature, it's just beyond the scope of what my time
> currently allows for, unfortunately). I think that hardly qualifies as
> "complaining".
>
> Best,
>
> --Gunnar
>
> Julian
> >
> > On Tue, Feb 21, 2023 at 1:06 PM Gunnar Morling
> > <gu...@googlemail.com.invalid> wrote:
> > >
> > > Hey Ruben,
> > >
> > > Thanks a lot for the quick response! In that light, isn't having that
> SQL
> > > example in the docs a bit confusing then? Might be worth clarifying for
> > the
> > > time being that this is a hypothetical syntax and recursive queries are
> > > only supported in the RelBuilder API? Happy to send a PR for doing that
> > doc
> > > update, if you think it makes sense and can point me to the source of
> > that
> > > page.
> > >
> > > Thanks again,
> > >
> > > --Gunnar
> > >
> > >
> > > Am Di., 21. Feb. 2023 um 20:56 Uhr schrieb Ruben Q L <
> rubenql@gmail.com
> > >:
> > >
> > > > Hello Gunnar,
> > > >
> > > > At the moment, recursive queries are only supported via RelBuilder
> > API, not
> > > > via SQL (the documentation shows the SQL equivalent to the RelBuider
> > code
> > > > just below, but Calcite currently only supports the latter, not the
> > > > former).
> > > >
> > > > There is an old ticket about supporting this feature in SQL [1] , but
> > so
> > > > far no work has been done in this regard.
> > > >
> > > > Best regards,
> > > > Ruben
> > > >
> > > > [1] https://issues.apache.org/jira/browse/CALCITE-129
> > > >
> > > >
> > > > On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
> > > > <gu...@googlemail.com.invalid> wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > I'm trying to run the recursive example from the Calcite algebra
> docs
> > > > [1],
> > > > > but I'm always getting an error at the RECURSIVE keyword:
> > > > >
> > > > >     WITH RECURSIVE aux(i) AS (
> > > > >       VALUES (1)
> > > > >       UNION ALL
> > > > >       SELECT i+1 FROM aux WHERE i < 10
> > > > >     )
> > > > >     SELECT * FROM aux
> > > > >
> > > > >     "Incorrect syntax near the keyword 'RECURSIVE' at line 1,
> column
> > 6"
> > > > >
> > > > > I saw this is considered an experimental feature for the time
> being,
> > is
> > > > > there some flag/option I need to specify when creating my
> connection
> > to
> > > > > enable support for recursive queries?
> > > > >
> > > > > Thanks a lot for any help,
> > > > >
> > > > > --Gunnar
> > > > >
> > > > > [1] https://calcite.apache.org/docs/algebra.html#recursive-queries
> > > > >
> > > >
> >
>

Re: RECURSIVE keyword not supported?

Posted by Gunnar Morling <gu...@googlemail.com.INVALID>.
Hey Julien,

Am Di., 21. Feb. 2023 um 23:01 Uhr schrieb Julian Hyde <jh...@apache.org>:

> A classic problem of open source development. Should we accept a
> contribution for recursive queries even though it doesn't have SQL
> support? And if we choose to accept it without SQL support, do we show
> the equivalent SQL in our documentation?
>

Yes, the struggle is real, and there's no simple answer. Being a maintainer
of multiple open-source projects myself, I very much can relate to that.
FWIW, I think you made the right call by accepting the feature in its
current state. It then comes down to expectation management, i.e. being
very transparent about what is supported and what isn't.

>
> I agree that the documentation is a bit misleading. The caveats about
> "experimental APIs" mostly cover it, but it should say that "WITH
> RECURSIVE" SQL is not currently supported. But you are also
> complaining that the free lunch has french fries and baked potatoes
> but no mashed potatoes.
>

Ugh, now that's a bit harsh, don't you think? I've asked for clarification
about how to use this feature, and when learning that right now it isn't,
I've offered to help clarify that fact in the doc (as much as I'd love help
building the actual feature, it's just beyond the scope of what my time
currently allows for, unfortunately). I think that hardly qualifies as
"complaining".

Best,

--Gunnar

Julian
>
> On Tue, Feb 21, 2023 at 1:06 PM Gunnar Morling
> <gu...@googlemail.com.invalid> wrote:
> >
> > Hey Ruben,
> >
> > Thanks a lot for the quick response! In that light, isn't having that SQL
> > example in the docs a bit confusing then? Might be worth clarifying for
> the
> > time being that this is a hypothetical syntax and recursive queries are
> > only supported in the RelBuilder API? Happy to send a PR for doing that
> doc
> > update, if you think it makes sense and can point me to the source of
> that
> > page.
> >
> > Thanks again,
> >
> > --Gunnar
> >
> >
> > Am Di., 21. Feb. 2023 um 20:56 Uhr schrieb Ruben Q L <rubenql@gmail.com
> >:
> >
> > > Hello Gunnar,
> > >
> > > At the moment, recursive queries are only supported via RelBuilder
> API, not
> > > via SQL (the documentation shows the SQL equivalent to the RelBuider
> code
> > > just below, but Calcite currently only supports the latter, not the
> > > former).
> > >
> > > There is an old ticket about supporting this feature in SQL [1] , but
> so
> > > far no work has been done in this regard.
> > >
> > > Best regards,
> > > Ruben
> > >
> > > [1] https://issues.apache.org/jira/browse/CALCITE-129
> > >
> > >
> > > On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
> > > <gu...@googlemail.com.invalid> wrote:
> > >
> > > > Hi,
> > > >
> > > > I'm trying to run the recursive example from the Calcite algebra docs
> > > [1],
> > > > but I'm always getting an error at the RECURSIVE keyword:
> > > >
> > > >     WITH RECURSIVE aux(i) AS (
> > > >       VALUES (1)
> > > >       UNION ALL
> > > >       SELECT i+1 FROM aux WHERE i < 10
> > > >     )
> > > >     SELECT * FROM aux
> > > >
> > > >     "Incorrect syntax near the keyword 'RECURSIVE' at line 1, column
> 6"
> > > >
> > > > I saw this is considered an experimental feature for the time being,
> is
> > > > there some flag/option I need to specify when creating my connection
> to
> > > > enable support for recursive queries?
> > > >
> > > > Thanks a lot for any help,
> > > >
> > > > --Gunnar
> > > >
> > > > [1] https://calcite.apache.org/docs/algebra.html#recursive-queries
> > > >
> > >
>

Re: RECURSIVE keyword not supported?

Posted by Julian Hyde <jh...@apache.org>.
A classic problem of open source development. Should we accept a
contribution for recursive queries even though it doesn't have SQL
support? And if we choose to accept it without SQL support, do we show
the equivalent SQL in our documentation?

I agree that the documentation is a bit misleading. The caveats about
"experimental APIs" mostly cover it, but it should say that "WITH
RECURSIVE" SQL is not currently supported. But you are also
complaining that the free lunch has french fries and baked potatoes
but no mashed potatoes.

Julian

On Tue, Feb 21, 2023 at 1:06 PM Gunnar Morling
<gu...@googlemail.com.invalid> wrote:
>
> Hey Ruben,
>
> Thanks a lot for the quick response! In that light, isn't having that SQL
> example in the docs a bit confusing then? Might be worth clarifying for the
> time being that this is a hypothetical syntax and recursive queries are
> only supported in the RelBuilder API? Happy to send a PR for doing that doc
> update, if you think it makes sense and can point me to the source of that
> page.
>
> Thanks again,
>
> --Gunnar
>
>
> Am Di., 21. Feb. 2023 um 20:56 Uhr schrieb Ruben Q L <ru...@gmail.com>:
>
> > Hello Gunnar,
> >
> > At the moment, recursive queries are only supported via RelBuilder API, not
> > via SQL (the documentation shows the SQL equivalent to the RelBuider code
> > just below, but Calcite currently only supports the latter, not the
> > former).
> >
> > There is an old ticket about supporting this feature in SQL [1] , but so
> > far no work has been done in this regard.
> >
> > Best regards,
> > Ruben
> >
> > [1] https://issues.apache.org/jira/browse/CALCITE-129
> >
> >
> > On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
> > <gu...@googlemail.com.invalid> wrote:
> >
> > > Hi,
> > >
> > > I'm trying to run the recursive example from the Calcite algebra docs
> > [1],
> > > but I'm always getting an error at the RECURSIVE keyword:
> > >
> > >     WITH RECURSIVE aux(i) AS (
> > >       VALUES (1)
> > >       UNION ALL
> > >       SELECT i+1 FROM aux WHERE i < 10
> > >     )
> > >     SELECT * FROM aux
> > >
> > >     "Incorrect syntax near the keyword 'RECURSIVE' at line 1, column 6"
> > >
> > > I saw this is considered an experimental feature for the time being, is
> > > there some flag/option I need to specify when creating my connection to
> > > enable support for recursive queries?
> > >
> > > Thanks a lot for any help,
> > >
> > > --Gunnar
> > >
> > > [1] https://calcite.apache.org/docs/algebra.html#recursive-queries
> > >
> >

Re: RECURSIVE keyword not supported?

Posted by Gunnar Morling <gu...@googlemail.com.INVALID>.
Hey Ruben,

Thanks a lot for the quick response! In that light, isn't having that SQL
example in the docs a bit confusing then? Might be worth clarifying for the
time being that this is a hypothetical syntax and recursive queries are
only supported in the RelBuilder API? Happy to send a PR for doing that doc
update, if you think it makes sense and can point me to the source of that
page.

Thanks again,

--Gunnar


Am Di., 21. Feb. 2023 um 20:56 Uhr schrieb Ruben Q L <ru...@gmail.com>:

> Hello Gunnar,
>
> At the moment, recursive queries are only supported via RelBuilder API, not
> via SQL (the documentation shows the SQL equivalent to the RelBuider code
> just below, but Calcite currently only supports the latter, not the
> former).
>
> There is an old ticket about supporting this feature in SQL [1] , but so
> far no work has been done in this regard.
>
> Best regards,
> Ruben
>
> [1] https://issues.apache.org/jira/browse/CALCITE-129
>
>
> On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
> <gu...@googlemail.com.invalid> wrote:
>
> > Hi,
> >
> > I'm trying to run the recursive example from the Calcite algebra docs
> [1],
> > but I'm always getting an error at the RECURSIVE keyword:
> >
> >     WITH RECURSIVE aux(i) AS (
> >       VALUES (1)
> >       UNION ALL
> >       SELECT i+1 FROM aux WHERE i < 10
> >     )
> >     SELECT * FROM aux
> >
> >     "Incorrect syntax near the keyword 'RECURSIVE' at line 1, column 6"
> >
> > I saw this is considered an experimental feature for the time being, is
> > there some flag/option I need to specify when creating my connection to
> > enable support for recursive queries?
> >
> > Thanks a lot for any help,
> >
> > --Gunnar
> >
> > [1] https://calcite.apache.org/docs/algebra.html#recursive-queries
> >
>

Re: RECURSIVE keyword not supported?

Posted by Ruben Q L <ru...@gmail.com>.
Hello Gunnar,

At the moment, recursive queries are only supported via RelBuilder API, not
via SQL (the documentation shows the SQL equivalent to the RelBuider code
just below, but Calcite currently only supports the latter, not the former).

There is an old ticket about supporting this feature in SQL [1] , but so
far no work has been done in this regard.

Best regards,
Ruben

[1] https://issues.apache.org/jira/browse/CALCITE-129


On Tue, Feb 21, 2023 at 7:23 PM Gunnar Morling
<gu...@googlemail.com.invalid> wrote:

> Hi,
>
> I'm trying to run the recursive example from the Calcite algebra docs [1],
> but I'm always getting an error at the RECURSIVE keyword:
>
>     WITH RECURSIVE aux(i) AS (
>       VALUES (1)
>       UNION ALL
>       SELECT i+1 FROM aux WHERE i < 10
>     )
>     SELECT * FROM aux
>
>     "Incorrect syntax near the keyword 'RECURSIVE' at line 1, column 6"
>
> I saw this is considered an experimental feature for the time being, is
> there some flag/option I need to specify when creating my connection to
> enable support for recursive queries?
>
> Thanks a lot for any help,
>
> --Gunnar
>
> [1] https://calcite.apache.org/docs/algebra.html#recursive-queries
>