]
Steven Hawkins resolved TEIID-5829.
-----------------------------------
Resolution: Cannot Reproduce
I can't seem to reproduce this on master. The output of the literal is the same for
me with or without a limit and includes the additional \ to escape the \. The literal
handling logic though should be the same on 9.1.1 as that hasn't changed since
TEIID-3692
Impala Translator - Mixed Results in Native Function Pushdown
-------------------------------------------------------------
Key: TEIID-5829
URL:
https://issues.jboss.org/browse/TEIID-5829
Project: Teiid
Issue Type: Bug
Components: Misc. Connectors
Affects Versions: 9.1.1
Reporter: Scott Wallace
Assignee: Steven Hawkins
Priority: Minor
Labels: Impala_Translator
When running a query, which is referencing an Impala native function, regexp_replace, we
are seeing inconsistent results.
The following example Teiid query returns 0 records:
{noformat}SELECT col1
FROM TeiidView1
WHERE impala.regexp_replace(col1, '\047', '') =
'SomeString'{noformat}
Looking at the Impala generated query, it is not passing the arguments to the function
correctly. The resulting (incorrect and unexpected) Impala query for the above Teiid query
is:
{noformat}SELECT col1
FROM impala_table
WHERE regexp_replace(col1,'\\\\047','') = 'SomeString'{noformat}
Oddly, while experimenting, if we add the LIMIT clause to the Teiid query the argument
pushdown result is correct!
The following example Teiid query returns records:
{noformat}SELECT col1
FROM TeiidView1
WHERE impala.regexp_replace(col1, '\047', '') = 'SomeString'
LIMIT 100{noformat}
Here is the resulting (correct and expected) Impala query for the above example Teiid
query with LIMIT clause:
{noformat}SELECT col1
FROM impala_table
WHERE regexp_replace(g_1.advertiser_name, '\\047', '') =
'SomeString'
LIMIT 100{noformat}