ID:               36145
 Updated by:       [EMAIL PROTECTED]
 Reported By:      brage at zoo dot uib dot no
-Status:           Open
+Status:           Bogus
 Bug Type:         LDAP related
 Operating System: FreeBSD 5.4-STABLE AMD64
 PHP Version:      4.4.2
 New Comment:

It's either openldap bug or you're just running out of file-descriptors
on your server. Definately not PHP bug. (I can't even reproduce it
myself)



Previous Comments:
------------------------------------------------------------------------

[2006-01-25 10:09:24] brage at zoo dot uib dot no

Sorry, the bug-reproducing code should have $i <= 30, not 20.

------------------------------------------------------------------------

[2006-01-25 10:07:25] brage at zoo dot uib dot no

The problem seems to be related to the number of open files. 
The following script will use all available cpu and never finish if run
with the cli version. If I reduce the number of open files to 20 it will
bind sucessfully immediately.

<?php
$ldap_uri = 'removed';
$ldap_dn = 'removed';

for($i = 1; $i <= 20; $i++)
  $files[] = tmpfile();

$ds = ldap_connect($ldap_uri);
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);

if($bind = ldap_bind($ds,$ldap_rdn))
  print "Success\n";
else
  print "Failure\n";

foreach($files as $file)
  fclose($file);
?>

It is likely that the bug is in openldap and not in PHP. AFAICS it is
the call to ldap_bind_s() in php-4.4.2/ext/ldap/ldap.c which never
finishes.

------------------------------------------------------------------------

[2006-01-24 17:32:05] brage at zoo dot uib dot no

That does not seem likely.

It is reproducible with an apache process serving no other request than
a single request to the test page. Also the number of virtualhosts
needed to reproduce the problem is fairly low ( < 15, but with own log
files). 

A ktrace of the request gives a 1.3GB kdump file with 8 million 
select()-calls before the request dies from a timeout after 60 seconds.

------------------------------------------------------------------------

[2006-01-24 16:20:53] [EMAIL PROTECTED]

It's just your server hitting it's limit..

------------------------------------------------------------------------

[2006-01-24 16:18:49] brage at zoo dot uib dot no

Description:
------------
I am experiencing exactly the same problem as described in 
Bug #34892 (Process hang on LDAP operations).

The system is
 - FreeBSD 5.4-STABLE AMD64 (SMP)
 - OpenLDAP Client libraries 2.2.30
 - PHP 4.4.2 

On ldap_bind() the system goes into a select-loop and uses all
available cpu until timeout.

The problem is only present when I have many open virtual servers, if I
reduce the number of active virtualhosts the problem disappears.  The
CLI version also works fine.


Reproduce code:
---------------
See bug #34892.




------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=36145&edit=1

Reply via email to