asterixdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Carey <dtab...@gmail.com>
Subject Re: Nested type + open-enforced-index question.
Date Fri, 14 Jul 2017 04:52:13 GMT
Sounds like a bug to me.


On 7/13/17 7:59 PM, Taewoo Kim wrote:
> Currently, I am working on a field type propagation without using
> initializing the OptimizableSubTree in the current index access method. I
> am encountering an issue with an open-type enforced index. So, I just want
> to make sure that my understanding is correct. It looks like we can't have
> an enforced-index on a completely schemaless nested field. For example, the
> following doesn't generate any issue.
>
> //
> create type DBLPType as open {id: int32}
> create type CSXType as closed {id: int32}
>
> create dataset DBLP(DBLPType) primary key id;
> create dataset CSX(CSXType) primary key id;
>
> for $a in dataset('DBLP')
> for $b in dataset('CSX')
> where $a.nested.one.title /*+ indexnl */ = $b.nested.one.title
> return {"arec": $a, "brec": $b}
> //
>
> However, the following generates an exception. So, can we assume that to
> create an enforced-index, except the leaf level, there should be a defined
> record type. For example, for this example, there should be "nested" type
> and "one" type.
>
> //
> create type DBLPType as open {id: int32}
> create type CSXType as closed {id: int32}
>
> create dataset DBLP(DBLPType) primary key id;
> create dataset CSX(CSXType) primary key id;
>
> create index title_index_DBLP on DBLP(nested.one.title: string?) enforced;
> create index title_index_CSX on CSX(nested.one.title: string?) enforced;
>
> for $a in dataset('DBLP')
> for $b in dataset('CSX')
> where $a.nested.one.title /*+ indexnl */ = $b.nested.one.title
> return {"arec": $a, "brec": $b}
> //
>
> Best,
> Taewoo
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message