[
https://issues.apache.org/jira/browse/ASTERIXDB-1201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15032758#comment-15032758
]
Jianfeng Jia commented on ASTERIXDB-1201:
-----------------------------------------
Hi devs,
I submitted an issue 1201 which happens on the master
(48706305724f6e2580b5a6716a709cebce2b40c0). But it’s not reproducible in the
the latest master.
Basically, it built an RTree index on an nullable field. It was complain about
the NULL values in the older version.
I’m wondering if anyone fix this problem intentionally. If so, what’s the
meaning of NULL as to the RTree index?
Best,
Jianfeng Jia
PhD Candidate of Computer Science
University of California, Irvine
> RTree built on the optional field refuses to load the NULL value when
> executing the bulk load
> ---------------------------------------------------------------------------------------------
>
> Key: ASTERIXDB-1201
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-1201
> Project: Apache AsterixDB
> Issue Type: Bug
> Components: Storage
> Reporter: Jianfeng Jia
> Assignee: Ian Maxon
>
> When I build a RTree index on an optional field, it will throw "Value
> provider for type NULL is not implemented" exception when operates the bulk
> load.
> Here is the reproducible script:
> {code}
> drop dataverse test if exists;
> create dataverse test;
> use dataverse test;
> 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;
> insert into dataset ds_set ( [{"fa":1}, {"fa":2, "fb":3}, {"fa":3,
> "fc":point("4.0,5.0")}]);
> load dataset ds_set
> using localfs
> (("path"="172.17.0.2:///data/twitter/test.adm"),("format"="adm"));
> {code}
> The "insert" and "load" statements are run separately.
> The test.adm uses the same three records:
> {code}
> {"fa":1}
> {"fa":2, "fb":3}
> {"fa":3, "fc":point("4.0,5.0")
> {code}
> The insert statement works fine. The error happens in the "load" statement
> only:
> {code}
> Caused by:
> org.apache.hyracks.algebricks.common.exceptions.NotImplementedException:
> Value provider for type NULL is not implemented
> at
> org.apache.asterix.dataflow.data.nontagged.valueproviders.AqlPrimitiveValueProviderFactory$1.getValue(AqlPrimitiveValueProviderFactory.java:64)
> at
> org.apache.hyracks.storage.am.rtree.frames.RTreeNSMFrame.adjustMBRImpl(RTreeNSMFrame.java:132)
> at
> org.apache.hyracks.storage.am.rtree.frames.RTreeNSMFrame.adjustMBR(RTreeNSMFrame.java:153)
> at
> org.apache.hyracks.storage.am.rtree.impls.RTree$RTreeBulkLoader.propagateBulk(RTree.java:954)
> at
> org.apache.hyracks.storage.am.rtree.impls.RTree$RTreeBulkLoader.end(RTree.java:937)
> at
> org.apache.hyracks.storage.am.lsm.rtree.impls.LSMRTree$LSMRTreeBulkLoader.end(LSMRTree.java:584)
> at
> org.apache.hyracks.storage.am.common.dataflow.IndexBulkLoadOperatorNodePushable.close(IndexBulkLoadOperatorNodePushable.java:107)
> ... 7 more
> {code}
> The BTree index works fine if I remove the RTree index.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)