Re: (More Information) was Problems with ldap_modify() and very large entries

From: Date: Tue, 02 Dec 2003 15:11:20 +0000
Subject: Re: (More Information) was Problems with ldap_modify() and very large entries
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-171585@lists.php.net to get a copy of this message
Just to note: the problem holds true for: ldap_mod_add, ldap_modify, and ldap_mod_replace. Also, adding ldap_set_option($conn, LDAP_OPT_SIZELIMIT, 200000) doesn't resolve the problem (or setting it to 0). Peter On Tue, 2 Dec 2003, Peter J Hartman wrote: > Here's a followup to my problem with ldap_mod_replace and ldap_modify. > Attached is a simple program demonstrating the problem. Basically, > if you try to fill an attribute in ldap that is something around 17000 > characters or above, ldap_mod_replace hangs. I've determined it > is definately a PHP problem, since ldap_modify > from the commandline works consistently and fine with very high amounts of > data. > > Thus, in the following simple code: > > $conn = ldap_connect("ldap://ldap.server.net"); > ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3); > ldap_start_tls($conn); > ldap_bind($conn, 'uid=root,ou=users,dc=server,dc=net', 'password'); > $dn = "mnTB=CB1,mnTS=abra,mnT=index,dc=peterjh,dc=in,dc=us,dc=server,dc=net"; > $array = array(); > $output = ""; > for ($i = 0; $i < 170; $i++) > { > # 26 * 4 = 104 - 4 = 100 > # thus append a hundred characters each iteration > $string = > "efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk > $output .= $string; > } > print strlen($output) ."\n"; > $array['mnappparam'][0] = $output; > ldap_mod_replace($conn, $dn, $array); > > Setting the top of $i to 170 or above hangs (consistently) ldap_mod_replace. > Technically, 161-180 (thus, 17000-18000 characters) hangs inconsistently, > while 160 and belows never hangs (16000 characters) and 181+ (181000 > chars) hangs everytime. > > Any help on this would be highly appreciated, > Peter John Hartman > >

« previous php.general (#171585) next »