[teiid-issues] [JBoss JIRA] Updated: (TEIID-1414) Execution of a Prepared Statement may receive LanguageBridgeFactory AssertionError

Steven Hawkins (JIRA) jira-events at lists.jboss.org
Mon Jan 3 17:51:17 EST 2011


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

Steven Hawkins updated TEIID-1414:
----------------------------------

    Fix Version/s: 7.1.1
                   7.3
      Component/s: Query Engine
                       (was: JDBC Driver)
                       (was: Server)


> Execution of a Prepared Statement may receive LanguageBridgeFactory AssertionError
> ----------------------------------------------------------------------------------
>
>                 Key: TEIID-1414
>                 URL: https://issues.jboss.org/browse/TEIID-1414
>             Project: Teiid
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 7.1.1
>            Reporter: Paul Nittel
>             Fix For: 7.1.1, 7.3
>
>
> I'm testing Prepared Statements and have a query that executes through SQuirreL as a non-prepared statement and fails with an assertion error when I run it through a Java application. Here's the SQL:
> SELECT PART_NAME FROM PARTS WHERE PARTS.PART_ID IN
> (SELECT SUPPLIER_PARTS.PART_ID FROM SUPPLIER_PARTS WHERE (SUPPLIER_PARTS.SUPPLIER_ID = 'S100')
> AND (LEFT(SUPPLIER_PARTS.SUPPLIER_ID, 1) != LEFT(PARTS.PART_COLOR, 1)))
> stmt = conn.prepareStatement("SELECT PART_NAME FROM PARTS WHERE PARTS.PART_ID IN "
>         + "(SELECT SUPPLIER_PARTS.PART_ID FROM SUPPLIER_PARTS WHERE (SUPPLIER_PARTS.SUPPLIER_ID = ?) "
>         + "AND (LEFT(SUPPLIER_PARTS.SUPPLIER_ID, 1) != LEFT(PARTS.PART_COLOR, 1))) ");
> 2011-01-03 14:30:22,515 ERROR [org.teiid.CONNECTOR] (Worker33_QueryProcessorQueue1000) Connector worker process failed for atomic-request=mQaVUbKNtiIi.20.2.219
> java.lang.AssertionError
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:459)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:311)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:266)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:319)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:268)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:207)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:149)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:399)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:282)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:207)
>         at org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:130)
>         at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:213)
>         at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:281)
>         at org.teiid.dqp.internal.process.DataTierTupleSource.access$000(DataTierTupleSource.java:71)
>         at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:123)
>         at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:120)
>         at org.teiid.dqp.internal.process.DQPCore$FutureWork.run(DQPCore.java:108)
>         at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:188)
>         at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:116)
>         at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:290)
>         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)
> 2011-01-03 14:30:22,524 WARN  [org.teiid.PROCESSOR] (Worker34_QueryProcessorQueue1001) Processing exception 'null' for request mQaVUbKNtiIi.20.  Exception type org.teiid.core.TeiidProcessingException thrown from org.teiid.dqp.internal.datamgr.LanguageBridgeFactory.translate(LanguageBridgeFactory.java:459). Enable more detailed logging to see the entire stacktrace.
> [Steve indicated this is the result of skipping the final rewrite of pushed subqueries.]

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the teiid-issues mailing list