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 2019/05/17 00:42:00 UTC

[jira] [Commented] (ASTERIXDB-2289) Problem in SQL++ with CASE processing and field access

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

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

Commit b62272b682cd4019ad3355d2c707e33a6996344b in asterixdb's branch refs/heads/master from Ali Alsuliman
[ https://gitbox.apache.org/repos/asf?p=asterixdb.git;h=b62272b ]

[ASTERIXDB-2289][COMP] Fix field access with CASE

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
This patch fixes field access in the presense CASE and JOIN.
This is a scenario where push-down-field-access rule throws an
exception if the field access has potentially two sources and
it could not push down the field access to left or right branch.
Don't throw an exception and just return false
(i.e. field access was not pushed) instead of throwing an exception.

Change-Id: I911e4e9018c15e8f226e46fa610d222eb2301fcd
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3399
Contrib: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Dmitry Lychagin <dm...@couchbase.com>


> Problem in SQL++ with CASE processing and field access
> ------------------------------------------------------
>
>                 Key: ASTERIXDB-2289
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-2289
>             Project: Apache AsterixDB
>          Issue Type: Bug
>          Components: COMP - Compiler
>    Affects Versions: 0.9.4
>            Reporter: Michael J. Carey
>            Assignee: Ali Alsuliman
>            Priority: Major
>              Labels: triaged
>             Fix For: 0.9.4.2
>
>
> USE TinySocial;
> SELECT
> (CASE WHEN g.id = 6 THEN g ELSE u END).name
> FROM ChirpUsers u JOIN GleambookUsers g ON u.name < g.name WHERE u.screenName = "ChangEwing_573";
> --> This returns a low-level error: 
> Field access switch-case(TRUE, eq($$g.getField("id"), 6), $$g, $$u).getField("name") does not correspond to any input of operator org.apache.hyracks.algebricks.core.algebra.operators.logical.InnerJoinOperator@495bf56a [AlgebricksException]
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)