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

ASF subversion and git services commented on ASTERIXDB-1201:
------------------------------------------------------------

Commit 3a88250d97ba1f4d6b983881a94b7a0a441ab9da in 
incubator-asterixdb-hyracks's branch refs/heads/master from [~imaxon]
[ 
https://git-wip-us.apache.org/repos/asf?p=incubator-asterixdb-hyracks.git;h=3a88250
 ]

Fix ASTERIXDB-1201

The reason the nulls were hitting the bulk loader was because
the filter was always set to null. It seems to work fine when
it is passed in just as it is in IndexInsertDeletePOperator

Change-Id: I0fbfaeb8a98316f4d148285832ad31d991481e4b
Reviewed-on: https://asterix-gerrit.ics.uci.edu/553
Tested-by: Jenkins <[email protected]>
Reviewed-by: Yingyi Bu <[email protected]>
Reviewed-by: Taewoo Kim <[email protected]>


> 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)

Reply via email to