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

problem with modify using python-ldap



Using python-ldap-python-ldap-2.0.0pre04 with Python 2.2.1, and OpenLDAP
2.0.23 on RedHat Linux.

Deleting and adding an attribute is taking 9 seconds.  The same actions
using ldapmodify(1) on the command line complete virtually instantly.

Oddly, the behavior does not manifest if log level 1 (trace function
calls) is enabled.  Here is a log snip at level 6 (heavy trace debugging
plus debug packet handling).  This first snip is with ldapmodify(1) as the
client:

    do_modify: dn (iuEduUPID=9900000004,ou=people,dc=iu,dc=edu)
    modifications:
            delete: iuEduMailDeliveryTo
            add: iuEduMailDeliveryTo
    ldbm_back_modify:
    ldbm_modify_internal: delete
    removing entire attribute iuEduMailDeliveryTo
    ldbm_modify_internal: add
    ldbm_modify_internal: replace
    ldbm_modify_internal: replace
    send_ldap_result: 0::

Now with python-ldap's modify_s operation as the client:

    do_modify: dn (iuEduUPID=9900000004,ou=people,dc=iu,dc=edu)
    modifications:
            delete: iuEduMailDeliveryTo
            add: iuEduMailDeliveryTo
    ldbm_back_modify:
    ldbm_modify_internal: delete
    removing entire attribute iuEduMailDeliveryTo
    ldbm_modify_internal: add
    ldbm_modify_internal: replace
    ldbm_modify_internal: replace
    ldap_read: want=1 error=Resource temporarily unavailable
 **** hangs for about 9 seconds here ****
    send_ldap_result: 0::

Ultimately the modifications succeed.  The difference I see is that
"Resource temporarily unavailable" message -- what is that resource?

Any ideas for further troubleshooting?

Thanks,

Allan