[jira] [Created] (CALCITE-5299) Unparsing should not add parentheses for SELECT in WITH body
Mou Wu created CALCITE-5299: --- Summary: Unparsing should not add parentheses for SELECT in WITH body Key: CALCITE-5299 URL: https://issues.apache.org/jira/browse/CALCITE-5299 Project: Calcite Issue Type: Bug Reporter: Mou Wu Note: This issue is related to https://issues.apache.org/jira/browse/CALCITE-5265 Add a case in SqlParserTest: -- This message was sent by Atlassian Jira (v8.20.10#820010)
Re: mocking service for Database
Kartik, You should make your own module that depends on both "core" and "file". In that way, no dependencies are circular. It sounds like you are hacking a fork of Calcite's git repo. If so, you could hack the 'plus' module, and make it depend on "file" and "core". Julian On Mon, Sep 26, 2022 at 10:05 AM Kartik Kudada wrote: > > Sorry typo error in the previous mail, the corrected part is highlighted. > > build.gradle.kts of file . > line - 24 > > dependencies { > api(project(":core")) > > > On Mon, Sep 26, 2022 at 10:32 PM Kartik Kudada > wrote: > > > > > Hi Michael , > > > > file module has core dependency. > > > > build.gradle.kts of core . > > line - 24 > > > > dependencies { > > api(project(":core")) > > > > > > That's why when adding the below dependencies in core module, results in > > circular dependency ( message: Circular dependency between the following > > tasks: ) > > > > api(project(":example")) > > api(project(":file")) > > > > If i add only example module => No circular dependency > > > > If I add only file mobile => circular dependency . > > > > > > Not sure how to fix that . > > > > Regards, > > Kartik > > > > On Mon, Sep 26, 2022 at 10:15 PM Michael Mior wrote: > > > >> Thanks Julian for correcting which package should be used. This is not a > >> circular dependency. There should be no problem with a dependency both > >> being required directly by your project and transitively via another > >> dependency. A circular dependency would be if the file adapter required > >> the > >> core code *and* the core code required the file adapter. > >> > >> -- > >> Michael Mior > >> mm...@apache.org > >> > >> > >> On Mon, Sep 26, 2022 at 12:03 PM Kartik Kudada > >> wrote: > >> > >> > Thanks for the quick response. > >> > > >> > org.apache.calcite.adapter.csv is in the file module. > >> > I tried to add example and file module in core's build.gradle.kts but > >> that > >> > results in circular dependency as file's build.gradle.kts also has core > >> > dependency. > >> > > >> > Core's build.gradle.kts > >> > > >> > api(project(":example")) > >> > api(project(":file")) > >> > > >> > > >> > Regards, > >> > > >> > Kartik > >> > > >> > > >> > > >> > On Mon, Sep 26, 2022 at 9:18 PM Julian Hyde > >> > wrote: > >> > > >> > > Or, better, the file adapter. It also handles CSV files and is not > >> “toy” > >> > > code. > >> > > > >> > > Julian > >> > > > >> > > > On Sep 26, 2022, at 08:20, Michael Mior wrote: > >> > > > > >> > > > Do you have the calcite-csv package as a dependency of your > >> project? > >> > > This > >> > > > must be added in addition to calcite-core. > >> > > > -- > >> > > > Michael Mior > >> > > > mm...@apache.org > >> > > > > >> > > > > >> > > >> On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada > >> > > >> wrote: > >> > > >> > >> > > >> Hi Calcite Developers, > >> > > >> > >> > > >> I am working on a requirement where user queries to RDMS database > >> and > >> > > >> under the hood, Calcite will send back the data from JSON, not from > >> > > RDMS. > >> > > >> > >> > > >> For this, I have added below code snippet in CalciteStatement > >> execute > >> > > >> method to add CSV schema runtime. > >> > > >> > >> > > >> sample code : > >> > > >> > >> > > >> final Schema schema = > >> > > >>CsvSchemaFactory.INSTANCE > >> > > >>.create(connection.getRootSchema(), null, > >> > > >>ImmutableMap.of("directory", > >> > > >>"EMPS.json", "flavor", "scannable")); > >> > > >> > >> > > >> connection.getRootSchema().add("mycsv", schema); > >> > > >> > >> > > >> So, when the user query "SELECT * FROM .EMPS" converts to > >> > > >> "SELECT * FROM \"mycsv\".EMPS" > >> > > >> > >> > > >> The above code says *package org.apache.calcite.adapter.csv does > >> not > >> > > >> exist,* > >> > > >> > >> > > >> I am trying to fix it for 5 hours. > >> > > >> How to do this? > >> > > >> > >> > > >> Regards, > >> > > >> Kartik > >> > > >> > >> > > > >> > > >> > >
Re: mocking service for Database
Sorry typo error in the previous mail, the corrected part is highlighted. build.gradle.kts of file . line - 24 dependencies { api(project(":core")) On Mon, Sep 26, 2022 at 10:32 PM Kartik Kudada wrote: > > Hi Michael , > > file module has core dependency. > > build.gradle.kts of core . > line - 24 > > dependencies { > api(project(":core")) > > > That's why when adding the below dependencies in core module, results in > circular dependency ( message: Circular dependency between the following > tasks: ) > > api(project(":example")) > api(project(":file")) > > If i add only example module => No circular dependency > > If I add only file mobile => circular dependency . > > > Not sure how to fix that . > > Regards, > Kartik > > On Mon, Sep 26, 2022 at 10:15 PM Michael Mior wrote: > >> Thanks Julian for correcting which package should be used. This is not a >> circular dependency. There should be no problem with a dependency both >> being required directly by your project and transitively via another >> dependency. A circular dependency would be if the file adapter required >> the >> core code *and* the core code required the file adapter. >> >> -- >> Michael Mior >> mm...@apache.org >> >> >> On Mon, Sep 26, 2022 at 12:03 PM Kartik Kudada >> wrote: >> >> > Thanks for the quick response. >> > >> > org.apache.calcite.adapter.csv is in the file module. >> > I tried to add example and file module in core's build.gradle.kts but >> that >> > results in circular dependency as file's build.gradle.kts also has core >> > dependency. >> > >> > Core's build.gradle.kts >> > >> > api(project(":example")) >> > api(project(":file")) >> > >> > >> > Regards, >> > >> > Kartik >> > >> > >> > >> > On Mon, Sep 26, 2022 at 9:18 PM Julian Hyde >> > wrote: >> > >> > > Or, better, the file adapter. It also handles CSV files and is not >> “toy” >> > > code. >> > > >> > > Julian >> > > >> > > > On Sep 26, 2022, at 08:20, Michael Mior wrote: >> > > > >> > > > Do you have the calcite-csv package as a dependency of your >> project? >> > > This >> > > > must be added in addition to calcite-core. >> > > > -- >> > > > Michael Mior >> > > > mm...@apache.org >> > > > >> > > > >> > > >> On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada >> > > >> wrote: >> > > >> >> > > >> Hi Calcite Developers, >> > > >> >> > > >> I am working on a requirement where user queries to RDMS database >> and >> > > >> under the hood, Calcite will send back the data from JSON, not from >> > > RDMS. >> > > >> >> > > >> For this, I have added below code snippet in CalciteStatement >> execute >> > > >> method to add CSV schema runtime. >> > > >> >> > > >> sample code : >> > > >> >> > > >> final Schema schema = >> > > >>CsvSchemaFactory.INSTANCE >> > > >>.create(connection.getRootSchema(), null, >> > > >>ImmutableMap.of("directory", >> > > >>"EMPS.json", "flavor", "scannable")); >> > > >> >> > > >> connection.getRootSchema().add("mycsv", schema); >> > > >> >> > > >> So, when the user query "SELECT * FROM .EMPS" converts to >> > > >> "SELECT * FROM \"mycsv\".EMPS" >> > > >> >> > > >> The above code says *package org.apache.calcite.adapter.csv does >> not >> > > >> exist,* >> > > >> >> > > >> I am trying to fix it for 5 hours. >> > > >> How to do this? >> > > >> >> > > >> Regards, >> > > >> Kartik >> > > >> >> > > >> > >> >
Re: mocking service for Database
Hi Michael , file module has core dependency. build.gradle.kts of core . line - 24 dependencies { api(project(":core")) That's why when adding the below dependencies in core module, results in circular dependency ( message: Circular dependency between the following tasks: ) api(project(":example")) api(project(":file")) If i add only example module => No circular dependency If I add only file mobile => circular dependency . Not sure how to fix that . Regards, Kartik On Mon, Sep 26, 2022 at 10:15 PM Michael Mior wrote: > Thanks Julian for correcting which package should be used. This is not a > circular dependency. There should be no problem with a dependency both > being required directly by your project and transitively via another > dependency. A circular dependency would be if the file adapter required the > core code *and* the core code required the file adapter. > > -- > Michael Mior > mm...@apache.org > > > On Mon, Sep 26, 2022 at 12:03 PM Kartik Kudada > wrote: > > > Thanks for the quick response. > > > > org.apache.calcite.adapter.csv is in the file module. > > I tried to add example and file module in core's build.gradle.kts but > that > > results in circular dependency as file's build.gradle.kts also has core > > dependency. > > > > Core's build.gradle.kts > > > > api(project(":example")) > > api(project(":file")) > > > > > > Regards, > > > > Kartik > > > > > > > > On Mon, Sep 26, 2022 at 9:18 PM Julian Hyde > > wrote: > > > > > Or, better, the file adapter. It also handles CSV files and is not > “toy” > > > code. > > > > > > Julian > > > > > > > On Sep 26, 2022, at 08:20, Michael Mior wrote: > > > > > > > > Do you have the calcite-csv package as a dependency of your project? > > > This > > > > must be added in addition to calcite-core. > > > > -- > > > > Michael Mior > > > > mm...@apache.org > > > > > > > > > > > >> On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada > > > >> wrote: > > > >> > > > >> Hi Calcite Developers, > > > >> > > > >> I am working on a requirement where user queries to RDMS database > and > > > >> under the hood, Calcite will send back the data from JSON, not from > > > RDMS. > > > >> > > > >> For this, I have added below code snippet in CalciteStatement > execute > > > >> method to add CSV schema runtime. > > > >> > > > >> sample code : > > > >> > > > >> final Schema schema = > > > >>CsvSchemaFactory.INSTANCE > > > >>.create(connection.getRootSchema(), null, > > > >>ImmutableMap.of("directory", > > > >>"EMPS.json", "flavor", "scannable")); > > > >> > > > >> connection.getRootSchema().add("mycsv", schema); > > > >> > > > >> So, when the user query "SELECT * FROM .EMPS" converts to > > > >> "SELECT * FROM \"mycsv\".EMPS" > > > >> > > > >> The above code says *package org.apache.calcite.adapter.csv does > not > > > >> exist,* > > > >> > > > >> I am trying to fix it for 5 hours. > > > >> How to do this? > > > >> > > > >> Regards, > > > >> Kartik > > > >> > > > > > >
Re: mocking service for Database
Thanks Julian for correcting which package should be used. This is not a circular dependency. There should be no problem with a dependency both being required directly by your project and transitively via another dependency. A circular dependency would be if the file adapter required the core code *and* the core code required the file adapter. -- Michael Mior mm...@apache.org On Mon, Sep 26, 2022 at 12:03 PM Kartik Kudada wrote: > Thanks for the quick response. > > org.apache.calcite.adapter.csv is in the file module. > I tried to add example and file module in core's build.gradle.kts but that > results in circular dependency as file's build.gradle.kts also has core > dependency. > > Core's build.gradle.kts > > api(project(":example")) > api(project(":file")) > > > Regards, > > Kartik > > > > On Mon, Sep 26, 2022 at 9:18 PM Julian Hyde > wrote: > > > Or, better, the file adapter. It also handles CSV files and is not “toy” > > code. > > > > Julian > > > > > On Sep 26, 2022, at 08:20, Michael Mior wrote: > > > > > > Do you have the calcite-csv package as a dependency of your project? > > This > > > must be added in addition to calcite-core. > > > -- > > > Michael Mior > > > mm...@apache.org > > > > > > > > >> On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada > > >> wrote: > > >> > > >> Hi Calcite Developers, > > >> > > >> I am working on a requirement where user queries to RDMS database and > > >> under the hood, Calcite will send back the data from JSON, not from > > RDMS. > > >> > > >> For this, I have added below code snippet in CalciteStatement execute > > >> method to add CSV schema runtime. > > >> > > >> sample code : > > >> > > >> final Schema schema = > > >>CsvSchemaFactory.INSTANCE > > >>.create(connection.getRootSchema(), null, > > >>ImmutableMap.of("directory", > > >>"EMPS.json", "flavor", "scannable")); > > >> > > >> connection.getRootSchema().add("mycsv", schema); > > >> > > >> So, when the user query "SELECT * FROM .EMPS" converts to > > >> "SELECT * FROM \"mycsv\".EMPS" > > >> > > >> The above code says *package org.apache.calcite.adapter.csv does not > > >> exist,* > > >> > > >> I am trying to fix it for 5 hours. > > >> How to do this? > > >> > > >> Regards, > > >> Kartik > > >> > > >
Re: mocking service for Database
Thanks for the quick response. org.apache.calcite.adapter.csv is in the file module. I tried to add example and file module in core's build.gradle.kts but that results in circular dependency as file's build.gradle.kts also has core dependency. Core's build.gradle.kts api(project(":example")) api(project(":file")) Regards, Kartik On Mon, Sep 26, 2022 at 9:18 PM Julian Hyde wrote: > Or, better, the file adapter. It also handles CSV files and is not “toy” > code. > > Julian > > > On Sep 26, 2022, at 08:20, Michael Mior wrote: > > > > Do you have the calcite-csv package as a dependency of your project? > This > > must be added in addition to calcite-core. > > -- > > Michael Mior > > mm...@apache.org > > > > > >> On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada > >> wrote: > >> > >> Hi Calcite Developers, > >> > >> I am working on a requirement where user queries to RDMS database and > >> under the hood, Calcite will send back the data from JSON, not from > RDMS. > >> > >> For this, I have added below code snippet in CalciteStatement execute > >> method to add CSV schema runtime. > >> > >> sample code : > >> > >> final Schema schema = > >>CsvSchemaFactory.INSTANCE > >>.create(connection.getRootSchema(), null, > >>ImmutableMap.of("directory", > >>"EMPS.json", "flavor", "scannable")); > >> > >> connection.getRootSchema().add("mycsv", schema); > >> > >> So, when the user query "SELECT * FROM .EMPS" converts to > >> "SELECT * FROM \"mycsv\".EMPS" > >> > >> The above code says *package org.apache.calcite.adapter.csv does not > >> exist,* > >> > >> I am trying to fix it for 5 hours. > >> How to do this? > >> > >> Regards, > >> Kartik > >> >
Re: mocking service for Database
Or, better, the file adapter. It also handles CSV files and is not “toy” code. Julian > On Sep 26, 2022, at 08:20, Michael Mior wrote: > > Do you have the calcite-csv package as a dependency of your project? This > must be added in addition to calcite-core. > -- > Michael Mior > mm...@apache.org > > >> On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada >> wrote: >> >> Hi Calcite Developers, >> >> I am working on a requirement where user queries to RDMS database and >> under the hood, Calcite will send back the data from JSON, not from RDMS. >> >> For this, I have added below code snippet in CalciteStatement execute >> method to add CSV schema runtime. >> >> sample code : >> >> final Schema schema = >>CsvSchemaFactory.INSTANCE >>.create(connection.getRootSchema(), null, >>ImmutableMap.of("directory", >>"EMPS.json", "flavor", "scannable")); >> >> connection.getRootSchema().add("mycsv", schema); >> >> So, when the user query "SELECT * FROM .EMPS" converts to >> "SELECT * FROM \"mycsv\".EMPS" >> >> The above code says *package org.apache.calcite.adapter.csv does not >> exist,* >> >> I am trying to fix it for 5 hours. >> How to do this? >> >> Regards, >> Kartik >>
Re: mocking service for Database
Do you have the calcite-csv package as a dependency of your project? This must be added in addition to calcite-core. -- Michael Mior mm...@apache.org On Mon, Sep 26, 2022 at 10:37 AM Kartik Kudada wrote: > Hi Calcite Developers, > > I am working on a requirement where user queries to RDMS database and > under the hood, Calcite will send back the data from JSON, not from RDMS. > > For this, I have added below code snippet in CalciteStatement execute > method to add CSV schema runtime. > > sample code : > > final Schema schema = > CsvSchemaFactory.INSTANCE > .create(connection.getRootSchema(), null, > ImmutableMap.of("directory", > "EMPS.json", "flavor", "scannable")); > > connection.getRootSchema().add("mycsv", schema); > > So, when the user query "SELECT * FROM .EMPS" converts to > "SELECT * FROM \"mycsv\".EMPS" > > The above code says *package org.apache.calcite.adapter.csv does not > exist,* > > I am trying to fix it for 5 hours. > How to do this? > > Regards, > Kartik >
mocking service for Database
Hi Calcite Developers, I am working on a requirement where user queries to RDMS database and under the hood, Calcite will send back the data from JSON, not from RDMS. For this, I have added below code snippet in CalciteStatement execute method to add CSV schema runtime. sample code : final Schema schema = CsvSchemaFactory.INSTANCE .create(connection.getRootSchema(), null, ImmutableMap.of("directory", "EMPS.json", "flavor", "scannable")); connection.getRootSchema().add("mycsv", schema); So, when the user query "SELECT * FROM .EMPS" converts to "SELECT * FROM \"mycsv\".EMPS" The above code says *package org.apache.calcite.adapter.csv does not exist,* I am trying to fix it for 5 hours. How to do this? Regards, Kartik