[teiid-issues] [JBoss JIRA] (TEIID-2993) Adding source table with quoted name results in wrong generated SQL statement

Steven Hawkins (JIRA) issues at jboss.org
Mon Jun 9 09:10:15 EDT 2014


     [ https://issues.jboss.org/browse/TEIID-2993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins resolved TEIID-2993.
-----------------------------------

    Resolution: Deferred


There are two parts to this issue for the future.  The first part is that we would look into altering the parser and the symbols to use the token or some other unmolested user input as the command output.

The next part is to alter the resolver to make it aware of the proper usage of name parts - as it currently progressively resolves against partial names.  

The first change can be done without regard to backwards compatibility, but is inherently a design time concern and seemingly requires adding more state to the symbols.  The resolving change could be breaking and would have to be approached more carefully - although from the perspective of Teiid as a database is more proper.

> 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: 6.0.0
>            Reporter: Paul Richardson
>            Assignee: Steven Hawkins
>
> 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)


More information about the teiid-issues mailing list