How SqlParser config can help? If I understood correctly, parser config
affects only parser.parse stage. But code fails at the validation phase

Also, I would like to use ARRAY_CONCAT function with postgres dialect. My
parser config at the moment:

```
val parserConfig: SqlParser.Config =
PostgresqlSqlDialect.DEFAULT
.configureParser(SqlParser
.config()
// It is needed in order to parse PG "!~" operator
.withParserFactory(SqlBabelParserImpl.FACTORY)
)
.withConformance(SqlConformanceEnum.BABEL)
```

On Fri, Feb 4, 2022 at 2:26 PM Thomas Rebele <[email protected]>
wrote:

> Hello,
>
> SqlParserTest might help you. It has some checks related to BIG_QUERY.
> Maybe a
>
> .parserConfig(SqlParser.Config.DEFAULT.withConformance(SqlConformanceEnum.BIG_QUERY))
> could fix the problem.
>
> Cordialement / Best Regards,
> *Thomas Rebele, PhD* | R&D Developer | Germany | www.tibco.com
>
>
> On Fri, Feb 4, 2022 at 12:57 PM Dmitry Sysolyatin <[email protected]
> >
> wrote:
>
> > Hi!
> > I have a problem with ARRAY_CONCAT operator.
> >
> > The following code failed with the exception ''No match found for
> function
> > signature array_concat(<INTEGER ARRAY>, <INTEGER ARRAY>)".
> > ```
> > val config = Frameworks.newConfigBuilder()
> >      .parserConfig(parserConfig)
> >      .defaultSchema(CalciteSchema.createRootSchema(false, false).plus())
> >       .operatorTable(SqlOperatorTables.chain(
> >               SqlStdOperatorTable.instance(),
> >               SqlLibraryOperatorTableFactory.INSTANCE.getOperatorTable(
> >                     SqlLibrary.BIG_QUERY
> >        )))
> > .programs(Programs.standard())
> > .build()
> > val planner = Frameworks.getPlanner(config)
> >
> > val query = "SELECT ARRAY_CONCAT(ARRAY[1, 2], ARRAY[2, 3])"
> > val parsedSqlNode = planner.parse(query)
> > planner.validate(parsedSqlNode)
> > ```
> >
> > Am I doing something wrong or it is a bug?
> >
>

Reply via email to