[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: RE_23 hangs in test039 (back-hdb)

Pierangelo Masarati wrote:
On Sun, 2006-01-08 at 18:52 -0800, Howard Chu wrote:

Also I'll note that this whole situation occurs due to back-ldap reusing an existing connection. When I wrote the connection-sharing code in back-ldap, I specifically wrote it to only reuse a connection if the userID was the same, so it should never actually be sending multiple Bind requests on the same connection. A lot of that has changed with idassert support etc.,

Connections should still be reused only when the userID is the same, so no bind should occur; if it doesn't it's a bug, not a stretching of a feature. What could happen is that since in some cases it occurred to have long, unreasonable response times during binds, I placed a timeout on bind and, after few cycles the operation is abandoned and a new bind is tried on the same connection. This could be the bug,

so I suspect that there's really a bug in back-ldap that needs to be fixed. But we should still consider when is the correct time for an incoming Bind to trigger the abandons.

I'm experimenting with a fix now. The problem may be that the same conn can be fetched by ldap_back_getconn() multiple times while a bind is in progress (since in the initial state, both the incoming session and the conn handle are anonymous).

  -- Howard Chu
  Chief Architect, Symas Corp.  http://www.symas.com
  Director, Highland Sun        http://highlandsun.com/hyc
  OpenLDAP Core Team            http://www.openldap.org/project/