]
Dennis Reed updated JBNAME-51:
------------------------------
Attachment: (was: JBNAME-51.patch)
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
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.
Note: This would change the behavior of the client when node1 comes back up in the
middle,
so would not be eligible for an EAP patch release.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: