6 Replies Latest reply on May 12, 2011 10:19 AM by shawkins

    Dynamic VDB deploys in inactive state & throws exception

    scottdawson

      My environment is:

      JBoss AS 5.1

      Teiid 7.3

      SQL Server 2005 with JTDS 1.2.5 JDBC connector

       

      I have a data source for the SQL Server database and I believe the data source is fine because I can use it to make a connection without Teiid involved.

       

      I'm trying to create a minimal working dynamic VDB before moving on to more complex requirements so I'm deploying this in a vdb.xml file:

       

      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

      <vdb name="MyVDB" version="1">

           <description>A Dynamic VDB</description>

          <model name="Sales">

                           <source name="mssql-connector" translator-name="sqlserver" connection-jndi-name="java:HomeSalesDS"/>

          </model>

      </vdb>

       

      I see 2 problems in the app server log. First the VDB deploys (and stays) in an inactive state:

      17:47:58,937 INFO  [org.teiid.RUNTIME] VDB "MyVDB.1[Sales[mssql-connector/sqlserver/java:HomeSalesDS]]" deployed in inactive state.

       

      Followed by an exception:

      17:47:59,378 WARN  [org.jboss.util.threadpool.RunnableTaskWrapper] Unhandled throwable for runnable: org.teiid.deployers.VDBDeployer$1@4d93ee

      java.lang.AssertionError: Duplicate Table check_constraints

              at org.teiid.metadata.Schema.addTable(Schema.java:43)

              at org.teiid.metadata.MetadataFactory.addTable(MetadataFactory.java:82)

              at org.teiid.translator.jdbc.JDBCMetdataProcessor.getTables(JDBCMetdataProcessor.java:195)

              at org.teiid.translator.jdbc.JDBCMetdataProcessor.getConnectorMetadata(JDBCMetdataProcessor.java:110)

              at org.teiid.translator.jdbc.JDBCExecutionFactory.getMetadata(JDBCExecutionFactory.java:268)

              at org.teiid.translator.jdbc.JDBCExecutionFactory.getMetadata(JDBCExecutionFactory.java:80)

              at org.teiid.dqp.internal.datamgr.ConnectorManager.getMetadata(ConnectorManager.java:128)

              at org.teiid.deployers.VDBDeployer.loadMetadata(VDBDeployer.java:327)

              at org.teiid.deployers.VDBDeployer.access$000(VDBDeployer.java:61)

              at org.teiid.deployers.VDBDeployer$1.run(VDBDeployer.java:310)

              at org.jboss.util.threadpool.RunnableTaskWrapper.run(RunnableTaskWrapper.java:147)

              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)

       

      Can anyone tell me what I'm doing wrong?

       

      Thanks,

      Scott