[jira] [Created] (CALCITE-4238) Don't require each sub-project parser to have its own list of non-reserved keywords

2020-09-08 Thread Julian Hyde (Jira)
Julian Hyde created CALCITE-4238:


 Summary: Don't require each sub-project parser to have its own 
list of non-reserved keywords
 Key: CALCITE-4238
 URL: https://issues.apache.org/jira/browse/CALCITE-4238
 Project: Calcite
  Issue Type: Bug
Reporter: Julian Hyde


Since CALCITE-2405 each sub-parser has its own list of non-reserved keywords. 
This is good, because it allows the sub-parser to make keywords non-reserved 
(e.g. in DRILL-1065 Drill wanted {{EXEC}} [to be 
non-reserved|https://issues.apache.org/jira/browse/DRILL-1065?focusedCommentId=14903669=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-14903669])
 but it still requires each parser to have a list of non-reserved keywords (see 
e.g. [the list in Babel 
parser|https://github.com/apache/calcite/blob/eb4011bb4b9d962c2f8e6767cbee8c23435ef939/babel/src/main/codegen/config.fmpp#L37]).
 And if we add a keyword to Calcite, we usually have to modify the list in each 
sub-parser.

This proposal would move the list of default non-reserved keywords to a shared 
config file. This would reduce the amount of code in sub-parsers, and remove 
the need to edit them when we add a keyword to the base parser.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


Re: Slow tests broken in CI

2020-09-08 Thread Ruben Q L
Hello,

it seems that Vladimir Sitnikov already identified this issue as a possible
regression of https://issues.apache.org/jira/browse/CALCITE-4173
He created a PR to address the problem:
https://github.com/apache/calcite/pull/2141

Best regards,
Ruben


Le mar. 8 sept. 2020 à 08:15, Stamatis Zampetakis  a
écrit :

> Hello,
>
> GitHub actions show that there is some regression on our CI [1] appearing
> after commit [2].
> I logged CALCITE-4237 [3] to track this down. Can somebody have a look?
>
> Best,
> Stamatis
>
> [1] https://github.com/apache/calcite/runs/1073576662
> [2]
>
> https://github.com/apache/calcite/commit/76f26b8319e66c30c6cbfdfba6d5b2839cdedfa2
> [3] https://issues.apache.org/jira/browse/CALCITE-4237
>


Slow tests broken in CI

2020-09-08 Thread Stamatis Zampetakis
Hello,

GitHub actions show that there is some regression on our CI [1] appearing
after commit [2].
I logged CALCITE-4237 [3] to track this down. Can somebody have a look?

Best,
Stamatis

[1] https://github.com/apache/calcite/runs/1073576662
[2]
https://github.com/apache/calcite/commit/76f26b8319e66c30c6cbfdfba6d5b2839cdedfa2
[3] https://issues.apache.org/jira/browse/CALCITE-4237


[jira] [Created] (CALCITE-4237) AssertionError in SqlTypeFactoryImpl.leastRestrictive when running slow tests

2020-09-08 Thread Stamatis Zampetakis (Jira)
Stamatis Zampetakis created CALCITE-4237:


 Summary: AssertionError in SqlTypeFactoryImpl.leastRestrictive 
when running slow tests
 Key: CALCITE-4237
 URL: https://issues.apache.org/jira/browse/CALCITE-4237
 Project: Calcite
  Issue Type: Bug
Reporter: Stamatis Zampetakis
 Fix For: 1.26.0


There are various failures when running slow tests all due to the 
AssertionError raised in SqlTypeFactoryImpl.leastRestrictive.

Below a few tests that fail and the respective stacktraces showing the problem:

LatticeSuggesterTest#testFoodMartAll()
{noformat}
java.lang.AssertionError
at 
org.apache.calcite.sql.type.SqlTypeFactoryImpl.leastRestrictive(SqlTypeFactoryImpl.java:152)
at 
org.apache.calcite.rex.RexSimplify$RexSargBuilder.getType(RexSimplify.java:2693)
at 
org.apache.calcite.rex.RexSimplify$SargCollector.fix(RexSimplify.java:2631)
at 
org.apache.calcite.rex.RexSimplify.lambda$simplifyOrs$8(RexSimplify.java:1762)
at java.util.ArrayList.forEach(ArrayList.java:1259)
at org.apache.calcite.rex.RexSimplify.simplifyOrs(RexSimplify.java:1762)
at org.apache.calcite.rex.RexSimplify.simplifyOr(RexSimplify.java:1736)
at org.apache.calcite.rex.RexSimplify.simplify(RexSimplify.java:274)
at 
org.apache.calcite.rex.RexSimplify.simplifyUnknownAs(RexSimplify.java:243)
at 
org.apache.calcite.rex.RexSimplify.simplifyUnknownAsFalse(RexSimplify.java:232)
at 
org.apache.calcite.rex.RexSimplify.simplifyFilterPredicates(RexSimplify.java:2484)
at org.apache.calcite.tools.RelBuilder.filter(RelBuilder.java:1224)
at org.apache.calcite.tools.RelBuilder.filter(RelBuilder.java:1200)
at 
org.apache.calcite.rel.rules.FilterJoinRule.perform(FilterJoinRule.java:179)
at 
org.apache.calcite.rel.rules.FilterJoinRule$FilterIntoJoinRule.onMatch(FilterJoinRule.java:377)
at 
org.apache.calcite.plan.AbstractRelOptPlanner.fireRule(AbstractRelOptPlanner.java:333)
at org.apache.calcite.plan.hep.HepPlanner.applyRule(HepPlanner.java:542)
at org.apache.calcite.plan.hep.HepPlanner.applyRules(HepPlanner.java:407)
at 
org.apache.calcite.plan.hep.HepPlanner.executeInstruction(HepPlanner.java:243)
at 
org.apache.calcite.plan.hep.HepInstruction$RuleInstance.execute(HepInstruction.java:127)
at 
org.apache.calcite.plan.hep.HepPlanner.executeProgram(HepPlanner.java:202)
at org.apache.calcite.plan.hep.HepPlanner.findBestExp(HepPlanner.java:189)
at 
org.apache.calcite.materialize.LatticeSuggester.addQuery(LatticeSuggester.java:134)
at 
org.apache.calcite.materialize.LatticeSuggesterTest$Tester.addQuery(LatticeSuggesterTest.java:818)
at 
org.apache.calcite.materialize.LatticeSuggesterTest.checkFoodMartAll(LatticeSuggesterTest.java:309)
at 
org.apache.calcite.materialize.LatticeSuggesterTest.testFoodMartAll(LatticeSuggesterTest.java:398)
{noformat}

FoodmartTest#test(FoodmartQuery)[2383]
{noformat}
java.lang.AssertionError
at 
org.apache.calcite.sql.type.SqlTypeFactoryImpl.leastRestrictive(SqlTypeFactoryImpl.java:152)
at 
org.apache.calcite.rex.RexSimplify$RexSargBuilder.getType(RexSimplify.java:2693)
at 
org.apache.calcite.rex.RexSimplify$SargCollector.fix(RexSimplify.java:2631)
at 
org.apache.calcite.rex.RexSimplify.lambda$simplifyOrs$8(RexSimplify.java:1762)
at java.util.ArrayList.forEach(ArrayList.java:1259)
at org.apache.calcite.rex.RexSimplify.simplifyOrs(RexSimplify.java:1762)
at org.apache.calcite.rex.RexSimplify.simplifyOr(RexSimplify.java:1736)
at org.apache.calcite.rex.RexSimplify.simplify(RexSimplify.java:274)
at org.apache.calcite.rex.RexSimplify.simplifyList(RexSimplify.java:503)
at org.apache.calcite.rex.RexSimplify.simplifyAnd(RexSimplify.java:1295)
at org.apache.calcite.rex.RexSimplify.simplify(RexSimplify.java:272)
at 
org.apache.calcite.rex.RexSimplify.simplifyUnknownAs(RexSimplify.java:243)
at 
org.apache.calcite.rex.RexSimplify.simplifyUnknownAsFalse(RexSimplify.java:232)
at 
org.apache.calcite.rex.RexSimplify.simplifyFilterPredicates(RexSimplify.java:2484)
at org.apache.calcite.tools.RelBuilder.filter(RelBuilder.java:1224)
at org.apache.calcite.tools.RelBuilder.filter(RelBuilder.java:1211)
at 
org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:596)
at org.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:524)
at 
org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:280)
at 
org.apache.calcite.sql2rel.RelFieldTrimmer.trimChild(RelFieldTrimmer.java:222)
at 
org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:469)
at org.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:524)
at 
org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:280)
at