Uploaded image for project: 'Teiid Designer'
  1. Teiid Designer
  2. TEIIDDES-2024

Designer should not add connection-jndi-name attribute in VDB.xml when no jndi is being referenced

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 8.4
    • 8.3.1
    • None
    • None
    • Hide

      The steps are taken from E2eYahooUDF testscript.

      1. Setup DV 6 CR2 server:

      • unzip yahoo.zip to modules/org/jboss/teiid/translator
      • add line <translator name="yahoo" module="org.jboss.teiid.translator.yahoo"/> to standalone.xml
        2. Import metadata model from teiid designer text file YahooStocksXML.xml (MarketData.xml)
        3. Create new vdb with MarketData.xmi. In the source binding tab, select translator "yahoo", and JNDI name "java:jboss/datasources/ExampleDS" (if the JNDI name was empty, I couldn't deploy this vdb)
        4. Execute vdb:
        select * from MarketData.Stock WHERE Symbol = 'RHT'

      Actual results:
      TEIID30504 MarketData: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation

      Console:
      OPTIMIZATION COMPLETE:
      PROCESSOR PLAN:
      AccessNode(0) output=[MarketData.Stock.Symbol, MarketData.Stock.Last, MarketData.Stock."Date", MarketData.Stock."Time", MarketData.Stock.Change, MarketData.Stock."Open", MarketData.Stock.High, MarketData.Stock.Low, MarketData.Stock.Volume] SELECT MarketData.Stock.Symbol, MarketData.Stock.Last, MarketData.Stock."Date", MarketData.Stock."Time", MarketData.Stock.Change, MarketData.Stock."Open", MarketData.Stock.High, MarketData.Stock.Low, MarketData.Stock.Volume FROM MarketData.Stock WHERE MarketData.Stock.Symbol = 'RHT'

      ============================================================================

      17:08:26,063 ERROR [org.teiid.CONNECTOR] (Worker13_QueryProcessorQueue20) Connector worker process failed for atomic-request=0eGbtYhYPcn/.0.0.9: java.lang.AssertionError: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation
      at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:174) [teiid-api-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:190) [teiid-api-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:276) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:301) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:113) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:110) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_45]
      at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:58) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7]
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
      at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]

      17:08:26,065 WARN [org.teiid.PROCESSOR] (Worker12_QueryProcessorQueue21) TEIID30020 Processing exception for request 0eGbtYhYPcn/.0 'TEIID30504 MarketData: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation'. Originally TeiidProcessingException ExecutionFactory.java:174. Enable more detailed logging to see the entire stacktrace.

      Show
      The steps are taken from E2eYahooUDF testscript. 1. Setup DV 6 CR2 server: unzip yahoo.zip to modules/org/jboss/teiid/translator add line <translator name="yahoo" module="org.jboss.teiid.translator.yahoo"/> to standalone.xml 2. Import metadata model from teiid designer text file YahooStocksXML.xml (MarketData.xml) 3. Create new vdb with MarketData.xmi. In the source binding tab, select translator "yahoo", and JNDI name "java:jboss/datasources/ExampleDS" (if the JNDI name was empty, I couldn't deploy this vdb) 4. Execute vdb: select * from MarketData.Stock WHERE Symbol = 'RHT' Actual results: TEIID30504 MarketData: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation Console: OPTIMIZATION COMPLETE: PROCESSOR PLAN: AccessNode(0) output= [MarketData.Stock.Symbol, MarketData.Stock.Last, MarketData.Stock."Date", MarketData.Stock."Time", MarketData.Stock.Change, MarketData.Stock."Open", MarketData.Stock.High, MarketData.Stock.Low, MarketData.Stock.Volume] SELECT MarketData.Stock.Symbol, MarketData.Stock.Last, MarketData.Stock."Date", MarketData.Stock."Time", MarketData.Stock.Change, MarketData.Stock."Open", MarketData.Stock.High, MarketData.Stock.Low, MarketData.Stock.Volume FROM MarketData.Stock WHERE MarketData.Stock.Symbol = 'RHT' ============================================================================ 17:08:26,063 ERROR [org.teiid.CONNECTOR] (Worker13_QueryProcessorQueue20) Connector worker process failed for atomic-request=0eGbtYhYPcn/.0.0.9: java.lang.AssertionError: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:174) [teiid-api-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:190) [teiid-api-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:276) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:301) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:113) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:110) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_45] at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:58) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.4.1-redhat-7.jar:8.4.1-redhat-7] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45] at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45] 17:08:26,065 WARN [org.teiid.PROCESSOR] (Worker12_QueryProcessorQueue21) TEIID30020 Processing exception for request 0eGbtYhYPcn/.0 'TEIID30504 MarketData: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation'. Originally TeiidProcessingException ExecutionFactory.java:174. Enable more detailed logging to see the entire stacktrace.

      If I try to execute a VDB with metadata model created from teiid designer file, with translator set to "yahoo" and JNDI set to "java:jboss/datasources/ExampleDS", I get following error:
      TEIID30504 MarketData: org.jboss.jca.adapters.jdbc.WrapperDataSource is was not a ConnectionFactory implementation

        1. YahooStocksXML.xml
          1 kB
        2. yahoo.zip
          12 kB
        3. MarketData.zip
          20 kB

              blafond Barry LaFond
              lfabriko@redhat.com Lucie Krejcirova
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: