[teiid-issues] [JBoss JIRA] (TEIID-4705) correct the nvl pushdown for the impala translator

Ramesh Reddy (JIRA) issues at jboss.org
Wed Jan 18 10:23:00 EST 2017


    [ https://issues.jboss.org/browse/TEIID-4705?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13350494#comment-13350494 ] 

Ramesh Reddy commented on TEIID-4705:
-------------------------------------

[~ejlp12] See the confusing part is, you mention CDH as the system, that is Clodera's distribution, which is recommend to be used with Impala JDBC Driver and impala translator. When your system is Open Source Apache Hive or Horton Works Distribution then it is recommended to use the Hive JDBC driver and Hive translator in Teiid.  You seem to be using both interchangeably. The exception is logged against impala, but logs indicate behavior of "hive" translator. The impala translator's nvl(x, y) function is converted to isnull (x, y), where as hive translator converts nvl(x,y) to coalesce(x, y).

So, the queries are being converted correctly per translators. I have *not* seen the case when 

{code}
select nvl(e1, '') from table1, table2 where table1.e1 = table2.e1
{code}
to 
{code}
select isnull(e1) from table1, table2 where table1.e1 = table2.e1
{code}
in fact the code converts to 
{code}
select isnull(e1,'') from table1, table2 where table1.e1 = table2.e1
{code}

so, I advise you check what is mis-configuration step you did in your setup?

> correct the nvl pushdown for the impala translator
> --------------------------------------------------
>
>                 Key: TEIID-4705
>                 URL: https://issues.jboss.org/browse/TEIID-4705
>             Project: Teiid
>          Issue Type: Bug
>          Components: Misc. Connectors
>            Reporter: Johnathon Lee
>            Assignee: Steven Hawkins
>
> queries consisting of the nvl(x, y) function will fail since JDV translates to isnull(x,y)



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the teiid-issues mailing list