[
https://issues.jboss.org/browse/TEIID-2993?page=com.atlassian.jira.plugin...
]
Steven Hawkins commented on TEIID-2993:
---------------------------------------
This has been the parsing behavior since the old MMX days. There are a couple of reasons
for this. One is that I believe they wanted to support sql written for the target db.
Since after import the notions of catalog, schema, and table name can be altered, their
idea was to just throw away the user quoting. Then the resolving system matches this
perspective by progressively matching against partial names. This of course is not
correct from the perspective of Teiid as database and can lead to unexpected ambiguities.
Long story short from a runtime perspective the above is expected behavior.
Adding source table with quoted name results in wrong generated SQL
statement
-----------------------------------------------------------------------------
Key: TEIID-2993
URL:
https://issues.jboss.org/browse/TEIID-2993
Project: Teiid
Issue Type: Bug
Components: Query Engine
Affects Versions: 7.7.2, 8.7
Reporter: Paul Richardson
Assignee: Steven Hawkins
Fix For: 8.7.1, 8.8
Cloned from TEIIDDES-2152:
1) Created source model with simple table named "My.Quoted.Table" (including
quotes
2) Created simple virtual table and pasted: SELECT * FROM "My.Quoted.Table"
3) Parser returned a command resulting in the SQL: SELECT * FROM
My.Quoted."Table"
Parser should be able to handle quoted names properly. In this case the SQL should have
been valid as is.
Confirmed that this does go right back to the Teiid parser. To confirm, the following
test was included in
src/test/java/org/teiid/query/parser/TestParser.java
{code}
@Test
public void testQuotedSQLString() {
String sql = "SELECT * FROM \"My.Quoted.Table\""; //$NON-NLS-1$
String expected = "SELECT * FROM \"MY.QUOTED.TABLE\"";
//$NON-NLS-1$
helpTest(sql, expected, null);
}
{code}
Test fails with a comparison error with the parser returning the SQL in item 3 above.
--
This message was sent by Atlassian JIRA
(v6.2.3#6260)