You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2021/09/23 03:18:00 UTC
[jira] [Commented] (ASTERIXDB-2966) Non-equijoin in probe w/ array
index gives different result
[ https://issues.apache.org/jira/browse/ASTERIXDB-2966?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17418919#comment-17418919 ]
ASF subversion and git services commented on ASTERIXDB-2966:
------------------------------------------------------------
Commit a42e6669f77eea38a1c5697b31520f8c39f7ec70 in asterixdb's branch refs/heads/master from ggalvizo
[ https://gitbox.apache.org/repos/asf?p=asterixdb.git;h=a42e666 ]
[ASTERIXDB-2966][IDX] Disabling array index INLJ for non-equjoins in probe
- user model changes: no
- storage format changes: no
- interface changes: no
If there are non-equijoins in the probe (which lead to NL joins),
disable INLJ acceleration from array indexes. This is a broader scope
than the cross-joins in the probe from the previous fix.
Change-Id: I0d36784272acc43f4eb4d876d8f6ebe07b8014ff
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/13303
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Dmitry Lychagin <dm...@couchbase.com>
> Non-equijoin in probe w/ array index gives different result
> -----------------------------------------------------------
>
> Key: ASTERIXDB-2966
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-2966
> Project: Apache AsterixDB
> Issue Type: Bug
> Components: IDX - Indexes
> Reporter: Glenn Justo Galvizo
> Assignee: Glenn Justo Galvizo
> Priority: Major
>
> *Found with RQG
> The following query gives different results when the array index compiler flag is raised.
> {code:java}
> FROM ProbeDataset1 AS D2,
> ProbeDataset2 AS D3,
> IndexedDataset AS D1
> WHERE ( SOME AND EVERY V1 IN D1.container_object_2.nesting_1.contained_object_1 SATISFIES ( V1.double_rand_4.contained_object_1 /* +indexnl */ >= (TO_DOUBLE(D3.integer_rand_4) + 0.5) ) )
> SELECT COUNT(*);{code}
> The problem seems to be with non-equijoins in the probe. This issue does not arise if we were to switch the order of the two probes (eliminating the join in the probe). I speculate it has something to do with the rewrites involved in producing non-hash joins in the probe.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)