[teiid-issues] [JBoss JIRA] Commented: (TEIID-1453) Possible load-balancing issue in Teiid

Steven Hawkins (JIRA) jira-events at lists.jboss.org
Fri Jan 28 10:38:39 EST 2011


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

Steven Hawkins commented on TEIID-1453:
---------------------------------------

We'll need a little more detail to know what is going on here, but there may be some confusion over the feature.

The exception you're getting has to do with the DataSource max connections.  The maxCachedInstances has no influence on the number of connections that can be obtained, it just caches socket connections for reuse when reconnecting to a particular instance.

So it all depends on what the datasource configuration look like.  It can either go against the embedded instance, in which case node2 will never come into play, or it can be set up as a socket connection with the two instances listed in the url.  In the latter case there is no preference given to the first source over the second (unless you have altered the discovery strategy or listed node1 multiple times in the url).  

> Possible load-balancing issue in Teiid
> --------------------------------------
>
>                 Key: TEIID-1453
>                 URL: https://issues.jboss.org/browse/TEIID-1453
>             Project: Teiid
>          Issue Type: Bug
>    Affects Versions: 7.1.1
>            Reporter: Boris Belovic
>            Assignee: Steven Hawkins
>         Attachments: ConnectionWorker.java, LoadBalancingServlet.java, teiid-ds.xml
>
>
> I have 2 SOA-P servers clustered, both with Teiid installed.
> node1 has property org.teiid.sockets.maxCachedInstances set to 2
> node2 has property org.teiid.sockets.maxCachedInstances set to 16
> There is a web app deployed on node1 which starts consuming connections from Teiid datasource. When all connections from node1 are used, the app should get a connection from second node. But instead , I have got following exception:
> 16:06:59,341 ERROR [STDERR] org.jboss.util.NestedSQLException: Unable to get managed connection for TEIID-DS; - nested throwable: (javax.resource.ResourceException: Unable to get managed connection for TEIID-DS)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:95)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.soa.clustering.teiid.LoadBalancingServlet.getDatasourceConnection(Unknown Source)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.soa.clustering.teiid.LoadBalancingServlet.doGet(Unknown Source)
> 16:06:59,342 ERROR [STDERR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
> 16:06:59,342 ERROR [STDERR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
> 16:06:59,342 ERROR [STDERR] 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)
> 16:06:59,342 ERROR [STDERR] 	at java.lang.Thread.run(Thread.java:619)
> 16:06:59,342 ERROR [STDERR] Caused by: javax.resource.ResourceException: Unable to get managed connection for TEIID-DS
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:441)
> 16:06:59,342 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:424)
> 16:06:59,343 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
> 16:06:59,343 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
> 16:06:59,343 ERROR [STDERR] 	at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
> 16:06:59,343 ERROR [STDERR] 	... 24 more
> 16:06:59,343 ERROR [STDERR] Caused by: javax.resource.ResourceException: No ManagedConnections available within configured blocking timeout ( 30000 [ms] )
> 16:06:59,343 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:311)
> 16:06:59,343 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:690)
> 16:06:59,343 ERROR [STDERR] 	at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
> 16:06:59,343 ERROR [STDERR] 	... 28 more

-- 
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