You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Jianfeng Jia (JIRA)" <ji...@apache.org> on 2015/11/29 00:35:10 UTC

[jira] [Updated] (ASTERIXDB-1201) RTree built on the optional field refuses to load the NULL value when executing the bulk load

     [ https://issues.apache.org/jira/browse/ASTERIXDB-1201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jianfeng Jia updated ASTERIXDB-1201:
------------------------------------
    Description: 
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 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.

  was:
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:
{quote}
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"));

{quote}

The insert statement works fine. The error happens in the "load" statement only: 
{quote}
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 

{quote}

The BTree index works fine if I remove the RTree index.


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