Назад | Перейти на главную страницу

Ошибка при удалении memberUid из большой группы LDAP

У меня есть группа примерно из 40 000 участников. Я пытаюсь удалить memberUid от него.

Это мой набор изменений:

dn: uid=foobar,ou=People,dc=example,dc=com
changetype: delete

dn: cn=foobar,ou=Group,dc=example,dc=com
changetype: delete

dn: cn=giantgroup,ou=Group,dc=example,dc=com
changetype: modify
delete: memberUid
memberUid: foobar

Это мой призыв:

ldapmodify -c -x -w 'password' -D cn=admin,dc=example,dc=com -f delete.ldif

Это результат (когда я уже запускал его несколько раз, поэтому пользователь и группа пользователей уже удалены):

deleting entry "uid=foobar,ou=People,dc=example,dc=com"
ldap_delete: No such object (32)
    matched DN: ou=People,dc=example,dc=com

deleting entry "cn=foobar,ou=Group,dc=example,dc=com"
ldap_delete: No such object (32)
    matched DN: ou=Group,dc=example,dc=com

modifying entry "cn=giantgroup,ou=Group,dc=example,dc=com"
ldap_modify: Other (e.g., implementation specific) error (80)

Как мне отлаживать ldap_modify: Other (e.g., implementation specific) error (80)? Это очень активный сервер LDAP, поэтому включение вывода отладки сервера является непосильной задачей, и я не уверен, что искать с помощью grep.

Обновление: ошибка в журнале slapd:

5afb42f3 bdb(dc=example,dc=com): Lock table is out of available lock entries
5afb42f3 => bdb_idl_insert_key: c_get failed: Cannot allocate memory (12)
5afb42f3 conn=1005 op=3: attribute "memberUid" index add failure

Больше диагностики из этого сообщения в блоге:

# db_stat -h /var/lib/ldap/ -c | grep "Maximum number of locks"
1500    Maximum number of locks possible
1511    Maximum number of locks at any one time
14  Maximum number of locks in any one bucket
422 Maximum number of locks stolen by for an empty partition
48  Maximum number of locks stolen for any one partition

Исходя из этого, что было бы хорошим соотношением цены и качества set_lk_max_locks быть? 40000? И есть ли рекомендуемый способ изменить это значение для работающего сервера OpenLDAP?

Я переместил сюда следующий вопрос: Как изменить максимальное количество блокировок для OpenLDAP bdb?