You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Glenn Justo Galvizo (Jira)" <ji...@apache.org> on 2021/09/14 20:18:00 UTC
[jira] [Created] (ASTERIXDB-2964) UNNEST style join query with
composite atomic-array index not recognized
Glenn Justo Galvizo created ASTERIXDB-2964:
----------------------------------------------
Summary: UNNEST style join query with composite atomic-array index not recognized
Key: ASTERIXDB-2964
URL: https://issues.apache.org/jira/browse/ASTERIXDB-2964
Project: Apache AsterixDB
Issue Type: Bug
Components: IDX - Indexes
Reporter: Glenn Justo Galvizo
Assignee: Glenn Justo Galvizo
*Found with RQG.
UNNEST style join queries to use composite atomic-array indexes are not being accelerated. Queries can be rewritten to use a quantified expression style join to utilize the index. Example of query that is not accelerated is given below:
{code:java}
SET `compiler.arrayindex` "true";
DROP DATAVERSE TestDataverse1 IF EXISTS;
CREATE DATAVERSE TestDataverse1;
USE TestDataverse1;
CREATE TYPE TestType AS {
_id: uuid
};
CREATE DATASET Dataset1 (TestType)
PRIMARY KEY _id AUTOGENERATED;
CREATE DATASET Dataset2 (TestType)
PRIMARY KEY _id AUTOGENERATED;
CREATE INDEX d1Idx
ON Dataset1 (
field1 : bigint,
( UNNEST outer_items
UNNEST inner_items
SELECT field2 : bigint,
field3 : bigint ),
field4 : bigint
);
FROM Dataset2 D2,
Dataset1 D1
UNNEST D1.outer_items DOI
UNNEST DOI.inner_items DII
WHERE D1.field1 /* +indexnl */ = TO_BIGINT(D2.field1) AND
DII.field2 /* +indexnl */ = TO_BIGINT(D2.field2) AND
DII.field3 /* +indexnl */ = TO_BIGINT(D2.field3) AND
D1.field4 /* +indexnl */ = TO_BIGINT(D2.field4)
SELECT *;
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)