[teiid-issues] [JBoss JIRA] (TEIID-2192) Failure to access Oracle data source with column names enclosed in double quotes

Hisanobu Okuda (JIRA) jira-events at lists.jboss.org
Sun Sep 9 21:58:32 EDT 2012


Hisanobu Okuda created TEIID-2192:
-------------------------------------

             Summary: Failure to access Oracle data source with column names enclosed in double quotes
                 Key: TEIID-2192
                 URL: https://issues.jboss.org/browse/TEIID-2192
             Project: Teiid
          Issue Type: Bug
          Components: JDBC Connector
    Affects Versions: 7.4.4
         Environment: EDS 5.2.0
            Reporter: Hisanobu Okuda
            Assignee: Steven Hawkins


EDS is throwing an error when accessing Oracle data source with column names enclosed in double quotes.  I am able to import the metadata,  test through Datasource explorer but when i run the query against VDB, it is not interpreting correctly to send double-quotes to the column name in this case, causing below error.

For example,  

1.  create table and views as shown below in Oracle database

{code}
    create table test(recno  number,   ref_no varchar2(4000));
    create or replace view test_v as select recno as "Rec_Item_Number",   ref_no as "bom_ref_no." from test;
{code}

2. Import test_v data source view into JBoss developer studio
3. deploy and run the query against TEST_V:-

Then, the following exception is thrown:-

{code}
2012-09-05 08:34:39,386 WARN  [org.teiid.CONNECTOR] (Worker0_QueryProcessorQueue13) Connector worker process failed for atomic-request=Imx1VPWhia7G.6.0.0
org.teiid.translator.jdbc.JDBCExecutionException: Error Code:1747 Message:'ORA-01747: invalid user.table.column, table.column, or column specification
' error executing statement(s): [Prepared Values: [] SQL: SELECT c_0, c_1 FROM (SELECT g_0.Rec_Item_Number AS c_0, g_0.bom_ref_no. AS c_1 FROM "EII_CACHE"."TEST_V" g_0) WHERE ROWNUM <= 100]
        at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:90)
        at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:276)
        at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:354)
        at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:143)
        at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:140)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at org.teiid.dqp.internal.process.DQPCore$FutureWork.run(DQPCore.java:120)
        at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:240)
        at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:122)
        at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:292)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLSyntaxErrorException: ORA-01747: invalid user.table.column, table.column, or column specification

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207)
        at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:884)
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1167)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1289)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3584)
        at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3628)
        at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1493)
        at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeQuery(WrappedPreparedStatement.java:342)
        at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:86)
        ... 13 more
{code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the teiid-issues mailing list