[teiid-issues] [JBoss JIRA] (TEIID-2617) Deleting a Data Source for a Deployed/Active VDB in Teiid Designer via Servers view does not set VDB inactive

Barry LaFond (JIRA) jira-events at lists.jboss.org
Wed Aug 7 14:28:26 EDT 2013


    [ https://issues.jboss.org/browse/TEIID-2617?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12795655#comment-12795655 ] 

Barry LaFond commented on TEIID-2617:
-------------------------------------

>From what I understand, an INVALID VDB that's active can still be queried for it's Metadata, but any "pushdown" queries to the missing sources will fail. Van mentioned the requirement to handle data sources that go "down" for some reason or another.

So from a Teiid Designer perspective, Execute VDB currently assumes that if a VDB is deployed on the server it is active and can be queried. That's apparently that needs to get revised? 

So the Execute VDB action actually just needs to ask the question "areSourcesAvailable()" or something like that.  Seems like having to query the status as well as look at isValid() and checking getValidityErrors() is a LOT of business logic that could be simplified on the Teiid side at some point.


                
> Deleting a Data Source for a Deployed/Active VDB in Teiid Designer via Servers view does not set VDB inactive
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: TEIID-2617
>                 URL: https://issues.jboss.org/browse/TEIID-2617
>             Project: Teiid
>          Issue Type: Bug
>            Reporter: Barry LaFond
>            Assignee: Steven Hawkins
>
> 1) Created simple Parts model and deployed it in a PartsVDB and tested.
> 2) Selected and removed/deleted the Parts Data Source in the Servers view
> 3) Console logged the following:
> {code}
> 10:59:22,711 INFO  [org.teiid.CONNECTOR] (Worker1_QueryProcessorQueue11) zBnnx+1aVUjv OracleExecutionFactory Commit=true;DatabaseProductName=Oracle;DatabaseProductVersion=Oracle Database 11g Release 11.1.0.0.0 - Production;DriverMajorVersion=10;DriverMajorVersion=2;DriverName=Oracle JDBC driver;DriverVersion=10.2.0.4.0;IsolationLevel=2
> 10:59:40,554 INFO  [org.teiid.RUNTIME] (MSC service thread 1-8)  TEIID40012 For PartsVDB.1 VDB, Data Source "PartsOracle11" not found.
> 10:59:40,554 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-8)  JBAS010409: Unbound data source [java:/PartsOracle11]
> {code}
> 4) VDB was not set to inactive and I was still able to connect to it in Data Tools explorer and try to "Sample Contents", or basically preview it.
> {code}
> 10:59:40,902 ERROR [org.jboss.remoting.remote.connection] (Remoting "blafond-thinkpad-t520:MANAGEMENT" read-1)  JBREM000200: Remote connection failed: java.io.IOException: Connection reset by peer
> 11:02:59,017 WARN  [org.teiid.CONNECTOR] (Worker3_QueryProcessorQueue22) +l1hF0r0+BN4 Connector worker process failed for atomic-request=+l1hF0r0+BN4.3.0.3: org.teiid.translator.TranslatorException: TEIID30481 Failed to find the Connection Factory with JNDI name PartsOracle11. Please check the name or deploy the Connection Factory with specified name.
> 	at org.teiid.dqp.internal.datamgr.ConnectorManager.getConnectionFactory(ConnectorManager.java:251) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:211) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:446) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:159) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:156) [teiid-engine-8.4.1.jar:8.4.1]
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.6.0_27]
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.6.0_27]
> 	at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:58) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.4.1.jar:8.4.1]
> 	at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.4.1.jar:8.4.1]
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) [rt.jar:1.6.0_27]
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.6.0_27]
> 	at java.lang.Thread.run(Thread.java:679) [rt.jar:1.6.0_27]
> Caused by: javax.naming.NameNotFoundException: PartsOracle11 -- service jboss.naming.context.java.PartsOracle11
> 	at org.jboss.as.naming.ServiceBasedNamingStore.lookup(ServiceBasedNamingStore.java:103) [jboss-as-naming-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> 	at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:197) [jboss-as-naming-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> 	at org.jboss.as.naming.InitialContext.lookup(InitialContext.java:120) [jboss-as-naming-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> 	at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:183) [jboss-as-naming-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> 	at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:179) [jboss-as-naming-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> 	at javax.naming.InitialContext.lookup(InitialContext.java:409) [rt.jar:1.6.0_27]
> 	at org.teiid.dqp.internal.datamgr.ConnectorManager.getConnectionFactory(ConnectorManager.java:247) [teiid-engine-8.4.1.jar:8.4.1]
> 	... 13 more
> 11:02:59,024 WARN  [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue23) +l1hF0r0+BN4 TEIID30020 Processing exception for request +l1hF0r0+BN4.3 'TEIID30504 PartsOracle11: TEIID30481 Failed to find the Connection Factory with JNDI name PartsOracle11. Please check the name or deploy the Connection Factory with specified name.'. Originally TeiidProcessingException 'PartsOracle11 -- service jboss.naming.context.java.PartsOracle11' ServiceBasedNamingStore.java:103. Enable more detailed logging to see the entire stacktrace.
> {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