Ian Maxon created ASTERIXDB-1210:
------------------------------------

             Summary: Self spatial-intersect on optional attribute fails
                 Key: ASTERIXDB-1210
                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1210
             Project: Apache AsterixDB
          Issue Type: Bug
            Reporter: Ian Maxon


This query:

use dataverse test;

for $x in dataset ds_set 
where spatial-intersect($x.fc,$x.fc)
return $x


On this schema:

create type t_record as closed {
fa : int64,
fb: int64?,
fc : point?
}
create dataset ds_set (t_record) primary key fa;
create index bidx on ds_set(fb) type btree;
create index cidx on ds_set(fc) type rtree;

Fails to compile for some reason, with this stack trace:

java.lang.NullPointerException
        at 
org.apache.asterix.om.util.NonTaggedFormatUtil.isOptional(NonTaggedFormatUtil.java:96)
        at 
org.apache.asterix.metadata.entities.Index.getNonNullableType(Index.java:137)
        at 
org.apache.asterix.optimizer.rules.am.AbstractIntroduceAccessMethodRule.isMatched(AbstractIntroduceAccessMethodRule.java:325)
        at 
org.apache.asterix.optimizer.rules.am.AbstractIntroduceAccessMethodRule.pruneIndexCandidates(AbstractIntroduceAccessMethodRule.java:277)
        at 
org.apache.asterix.optimizer.rules.am.AbstractIntroduceAccessMethodRule.pruneIndexCandidates(AbstractIntroduceAccessMethodRule.java:119)
        at 
org.apache.asterix.optimizer.rules.am.IntroduceSelectAccessMethodRule.rewritePost(IntroduceSelectAccessMethodRule.java:108)
        at 
org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:125)
        at 
org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:99)
        at 
org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:99)
        at 
org.apache.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialFixpointRuleController.rewriteWithRuleCollection(SequentialFixpointRuleController.java:53)
        at 
org.apache.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.runOptimizationSets(HeuristicOptimizer.java:95)
        at 
org.apache.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.optimize(HeuristicOptimizer.java:82)
        at 
org.apache.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder$1$1.optimize(HeuristicCompilerFactoryBuilder.java:87)
        at 
org.apache.asterix.api.common.APIFramework.compileQuery(APIFramework.java:289)
        at 
org.apache.asterix.aql.translator.QueryTranslator.rewriteCompileQuery(QueryTranslator.java:1896)
        at 
org.apache.asterix.aql.translator.QueryTranslator.handleQuery(QueryTranslator.java:2470)
        at 
org.apache.asterix.aql.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:384)





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to