]
Dennis Reed commented on JBNAME-51:
-----------------------------------
Resolved by adding a JNDI property and a global system property to control whether or not
to try each provider
in order (current behavior) or prefer an existing cached connection to one of the listed
providers.
Delay in connecting when first of multiple providers is down can
cause performance issue
----------------------------------------------------------------------------------------
Key: JBNAME-51
URL:
https://issues.jboss.org/browse/JBNAME-51
Project: JBoss Naming
Issue Type: Bug
Components: jnpserver
Affects Versions: 5.0.3.GA
Reporter: Dennis Reed
Attachments: JBNAME-51.diff
org.jnp.interfaces.NamingContext.checkRef always loops through the provider list in
order,
trying to connect to the first before checking for a cached connection to a later
provider.
This affects performance because it can cause a delay on every context created, waiting
for a timeout on a node that is down.
For instance, the following takes a very long time when node1 is down.
...
env.put ( Context.PROVIDER_URL, "node1:1100,node2:1100" );
for ( int i = 0; i < 1000; ++ i ) {
InitialContext ctx = new InitialContext ( env );
...
}
If checkRef looked for a cached connection to any of the listed providers before trying
to connect to an uncached one,
there would only be a timeout delay on the very first connection attempt.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: