Refine load-balancing support in AS
-----------------------------------
Key: TEIID-1211
URL:
https://jira.jboss.org/browse/TEIID-1211
Project: Teiid
Issue Type: Quality Risk
Components: JDBC Driver
Affects Versions: 7.1
Reporter: Steve Hawkins
Assignee: Steve Hawkins
Fix For: 7.1.1
In an AS connection pool, an XAConnection does not receive a notification of a
connection.close, so our post-connection load-balancing logic will never kick in. For
environments with a low/infrequent number of client connections, this will produce a poor
load distribution.
Possible Solutions:
1. Ensure proper tracking of the transation state and switch servers after a
commit/rollback. This however would also require that session level temporary tables are
replicated (although that replication logic should be added as part of the materialization
feature). And would cause potential cache misses or other minor issues with session level
deterministic functions.
2. Promote the use of Teiid directly through our own DataSource and handle transaction
enlist/delist logic appropriately. Users would instead use a jboss beans.xml file to
create a named instance of the datasource in JNDI. The appeal of this solution is that it
we are architected to not require the use of a pool (settings for max connections,
statement pooling, are mostly irrelevant for local connections to Teiid). We have our own
thread pooling, etc.
3. See if we can get some AS patch to also pass connection events to PooledConnections.
Another thing that may need addressed is runtime discovery of additional hosts, if not we
could also add an option to pick up hosts and connection information from an external
file.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira