You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Chunwei Lei (Jira)" <ji...@apache.org> on 2019/08/23 02:04:00 UTC

[jira] [Resolved] (CALCITE-3228) Error while applying rule ProjectScanRule: interpreter

     [ https://issues.apache.org/jira/browse/CALCITE-3228?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chunwei Lei resolved CALCITE-3228.
----------------------------------
    Resolution: Fixed

Fixed in [https://github.com/apache/calcite/commit/22577e488e04d4056e15af96bac4246fd810f0fa]. Thank you for your review, [~jinxing6042@126.com], [~xndai], [~hyuan]!

> Error while applying rule ProjectScanRule: interpreter
> ------------------------------------------------------
>
>                 Key: CALCITE-3228
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3228
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Chunwei Lei
>            Assignee: Chunwei Lei
>            Priority: Critical
>              Labels: pull-request-available
>             Fix For: 1.21.0
>
>         Attachments: CALCITE-3228.patch, TestCalcite.java
>
>          Time Spent: 8h 20m
>  Remaining Estimate: 0h
>
> The following test can reproduce the issue.
>  
> {code:java}
> // FrameworksTest.java
>  @Test public void testMinMax() throws Exception {
>  Table table = new TableImpl();
>  final SchemaPlus rootSchema = Frameworks.createRootSchema(true);
>  SchemaPlus schema = rootSchema.add("x", new AbstractSchema());
>  schema.add("MYTABLE", table);
>  List<RelTraitDef> traitDefs = new ArrayList<>();
>  traitDefs.add(ConventionTraitDef.INSTANCE);
>  traitDefs.add(RelDistributionTraitDef.INSTANCE);
>  SqlParser.Config parserConfig =
>  SqlParser.configBuilder(SqlParser.Config.DEFAULT)
>  .setCaseSensitive(false)
>  .build();
> final FrameworkConfig config = Frameworks.newConfigBuilder()
>  .parserConfig(parserConfig)
>  .defaultSchema(schema)
>  .traitDefs(traitDefs)
>  // define the rules you want to apply
>  .ruleSets(
>  RuleSets.ofList(AbstractConverter.ExpandConversionRule.INSTANCE, ProjectTableScanRule.INSTANCE))
>  .programs(Programs.ofRules(Programs.RULE_SET))
>  .build();
> executeQuery(config, " select min(id) as mi, max(id) as ma from mytable where id=1 group by id",
>  CalciteSystemProperty.DEBUG.value());
>  }
> {code}
>  
> This is from [https://lists.apache.org/thread.html/67cb614ddd123a9092fdf37ace279eb563838b045a5554ad0005f030@%3Cdev.calcite.apache.org%3E]
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)