directory-api mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shawn McKinney <smckin...@apache.org>
Subject Re: LdapConnectionPool.getConnection doing extraneous search?
Date Mon, 22 Mar 2021 15:43:47 GMT


> On Mar 21, 2021, at 12:59 PM, Emmanuel Lécharny <elecharny@gmail.com> wrote:
> 
>> 
>> When I flip that switch, the dummy search no longer occurs when connection is retrieved,
which is `good.
>> Wonder what we lose.  Recovery from connections being timed out by server or reset
by intermediaries like routers?
> 
> Not that much. The gain is not enormous either, just  a round trip. The LDAP server is
not under heavy strain with such a request, it's an automatic answer. This is what you would
use for a Health Check.
> 

I’m going to have to respectfully disagree here. Under heavy load situations, that round
trip can be costly.  Even 10ms is a waste of time because Fortress grabs a connection from
the pool and performs (usually) just one operation.  Having that extra round trip per operation
is unacceptable, regardless of what it may be doing to/on the server.

> The risk not doing such a check is very very tenuous.

This is what I was hoping you were going to say.  I’ve tested restarting the server after
the pool was created and it seems OK.

> However, we have implemented it as commons-pool requires it to be implemented. The question
would be to know if we should make it a default.

Now that I understand what’s going on, I’m going to turn this off by default.  It can
still be enabled in the fortress config, but don’t see a need for it.

One more question, is this:

adminPool.setTestWhileIdle( testWhileIdle );

Not as concerned about it but wonder if it can safely be turned off as well.

Thanks for chiming in Emmanuel.

—
Shawn


---------------------------------------------------------------------
To unsubscribe, e-mail: api-unsubscribe@directory.apache.org
For additional commands, e-mail: api-help@directory.apache.org


Mime
View raw message