On 11/04/2013 10:46 AM, Jan Tomasek
wrote:
On 11/04/2013 05:22 PM, Rich Megginson wrote:On 11/04/2013 09:08 AM, Jan Tomasek wrote:On 11/04/2013 05:04 PM, Rich Megginson wrote:Does the script open a connection to the same server it is being called from?Yes.So this is a case of self-deadlock? I don't understand. What is it exactly that you expect will happen?If there is one connection it works. If there is 29 parallel bind requests it works. If there is 30 and more it immediately hang. I'm seeking why 29 is ok and 30 is bad. In other words deadlock happens only if I run 30+ parallel connections. The server by default has 30 worker threads. This is the (hidden) nsslapd-threadnumber attribute in cn=config. 30 is probably much too large for most deployments, which can get by with 2 threads per processor. I do this:for i in `seq 1 30` do time ldapsearch -LLL -H ldaps://xxx.cesnet.cz -x \ -b dc=perun-shadow,dc=cesnet,dc=cz \ -D "uid=semik$i,ou=People,dc=perun-shadow,dc=cesnet,dc=cz" \ -w 'zadek' -s base dn & doneand 389 is immediately deadlocked. That should not happen I think. The script itself binds anonymously so it should not go into PAM. It doesn't, but because all of the other worker threads in the server are waiting on the lock, there is no worker thread to service the request. Yes, please.That script was just proof of concept. Maybe I should explain what I want to do in other thread.
|
-- 389 users mailing list 389-users@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/389-users