[ 
https://issues.apache.org/jira/browse/CALCITE-4136?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17162907#comment-17162907
 ] 

Ruben Q L commented on CALCITE-4136:
------------------------------------

[~julianhyde], I created the "caused by" link, but you're right, strictly 
speaking this was caused by the "preliminary refactoring done in the context of 
CALCITE-3923". I will change the link into "relates to".

I had not looked at CALCITE-4079, so I cannot say much about it, but the 
current ticket seems a serious issue. Any user code that was using e.g. 
FilterCorrelateRule.INSTANCE with 1.23, once they upgrade to 1.24 will not work 
any more because of the NPE. Even though FilterCorrelateRule.INSTANCE will be 
deprecated in 1.24, it should still hold a valid rule instance, so a user could 
expect that their code should continue working as before; but it will not, and 
they will be forced to change it in order to avoid the deprecated rules.

> ReduceExpressionsRule.FILTER_INSTANCE cannot be initialized by some JVM
> -----------------------------------------------------------------------
>
>                 Key: CALCITE-4136
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4136
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Stamatis Zampetakis
>            Priority: Major
>         Attachments: DeprecatedRulesAreNull.png
>
>
> In certain JVM implementations the field cannot be initialized leading to 
> {{NullPointerException}} when using the rule.
> Few stacktraces are given below:
> {noformat}
> Caused by: java.lang.NullPointerException: at index 0
> at
> com.onwbp.com.google.common.collect.ObjectArrays.checkElementNotNull(ObjectArrays.java:239)
> at
> com.onwbp.com.google.common.collect.ObjectArrays.checkElementsNotNull(ObjectArrays.java:230)
> at
> com.onwbp.com.google.common.collect.ObjectArrays.checkElementsNotNull(ObjectArrays.java:225)
> at
> com.onwbp.com.google.common.collect.ImmutableList.construct(ImmutableList.java:281)
> at
> com.onwbp.com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:239)
> at
> com.onwbp.com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:209)
> at com.onwbp.org.apache.calcite.tools.RuleSets.ofList(RuleSets.java:41)
> {noformat}
> {noformat}
> java.lang.NullPointerException
> at
> org.apache.calcite.plan.AbstractRelOptPlanner.addRule(AbstractRelOptPlanner.java:147)
> at
> org.apache.calcite.plan.volcano.VolcanoPlanner.addRule(VolcanoPlanner.java:416)
> at herddb.sql.CalcitePlanner.runPlanner(CalcitePlanner.java:576)
> at herddb.sql.CalcitePlanner.translate(CalcitePlanner.java:331)
> at herddb.core.TestUtils.scan(TestUtils.java:70)
> {noformat}



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

Reply via email to