Innanzitutto ci sono una serie di problemi nell'uso di "delete" come nome di attributo, perche' "delete" e' una parola chiave di LDIF; c'e' un baco aperto al riguardo: <http://www.openldap.org/its?findid=4639> (e' anche chiuso perche' riguarda slurpd e quindi "wontfix").

Alessandro De Zorzi wrote:
Tempo fa avevo segnalato che in uno schema utilizzavo
un simpatico attributo dal nome di "delete"

attributetype ( 1.3.6.1.4.1.22339.1.1.13 NAME 'delete'
        DESC 'A boolean telling whether this item is marked for deletion'
        EQUALITY booleanMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )

questo era stato consigliato ma non avendo mai dato problemi non è stato
cambiato
ora in una situazione con replica Syncrepl e OpenLDAP 2.4.7 ho
verificato che creando
una Entry e aggiornando sul master l'oggetto prima che questo sia
replicato ldap va in crash
questo è il dump ottenuto lanciando slapd -d1

oc_check_allowed type "mailAutoreply"
oc_check_allowed type "delete"
oc_check_allowed type "vacationActive"
oc_check_allowed type "forwardActive"
oc_check_allowed type "amavisBypassVirusChecks"
oc_check_allowed type "amavisBypassSpamChecks"
oc_check_allowed type "amavisSpamKillLevel"
oc_check_allowed type "amavisSpamTag2Level"
oc_check_allowed type "amavisSpamTagLevel"
oc_check_allowed type "creationDate"
oc_check_allowed type "lastChange"
oc_check_allowed type "entryCSN"
oc_check_allowed type "modifiersName"
oc_check_allowed type "modifyTimestamp"
=> key_change(DELETE,1cb3)
<= key_change 0
slapd:
/home/pere/src/debiancvs/initscripts-ng-svn/trunk/src/insserv/openldap2.3-2.4.7/servers/slapd/schema_init.c:366:
octetStringIndexer: Assertion `i > 0' failed.
Abortito

Ovviamente quello che mi chiedo è se può dipendere dall'attributo
incriminato o se è un altro il motivo
(ad esempio la pacchettizzazione debian, poiché la linea
/home/pere/src/debiancvs/initscripts-ng-svn/trunk/src/insserv/openldap2.3-2.4.7/servers/slapd/schema_init.c:366:
mi è un po' sospetta...).

Mi sembra che il problema non sia presente nel 2.4.9 (ma non conosco i dettagli dell'operazione che hai eseguito). Puoi verificare? Il problema e' legato al fatto che la routine di indicizzazione dell'attributo (e' indicizzato, vero?) viene chiamata passandogli un'array di valori vuota, il che e' (dovrebbe essere) impossibile, da cui l'asserzione. Siccome dalla 2.4.7 alla 2.4.9 ci sono state un certo numero di modifiche (almeno 60 bugfixes, a occhio), puo' darsi che la cosa sia stata nel frattempo corretta.

Ciao, p.



Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
---------------------------------------
Office:  +39 02 23998309
Mobile:  +39 333 4963172
Email:   [EMAIL PROTECTED]
---------------------------------------


_______________________________________________
OpenLDAP mailing list
OpenLDAP@sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Rispondere a