per favore, mantieni le risposte in copia alla lista.

Andrea Cirulli wrote:
In effetti il crash è dovuto a mancanza di memoria
ho 32 Giga di memoria a disposizione, OpenLdap è compilato  a 32 bit

nello slapd.conf ho:
cachesize 1000000
searchstack 16
checkpoint 1024 15
overlay syncprov
syncprov-checkpoint 10000 10
syncprov-sessionlog 10000


nel DB_CONFIG ho:
set_cachesize 2 400000 256

Ho visto che lo slapd muore quando alloca più di 4G di VM (Virtual Memory)

Il fatto che non si possano indirizzare piu' di 4 GB di memoria virtuale ha senso, a 32 bit. Usi > 2 GB per la cache del Berkeley DB, il che significa che il Berkeley fa in modo di riservarsi piu' di 2GB di spazio di indirizzamento. Inoltre usi un sessionlog di 10000, il che significa che fino a 10000 modifiche possono essere tenute in log per ottimizzare il calcolo delle operazioni da replicare. Se le modifiche sono frequenti, questo parametro e' utile, ma corrisponde a un ulteriore caching. Infine, cachesize 1000000 significa che tieni in cache fino ad un milione di entries. La quantita' di memoria occupata dipende dal tipo di entries, pero' tieni presente che e' almeno pari ad un valore compreso tra il doppio e il triplo della loro dimensione come bytes in LDIF, quindi 1KB per entry e' una stima non troppo conservativa anche per entries "piccole"; ne risulta che rischi di tener via 1GB solo di cache del back-bdb. A questo punto, il rischio di eccedere i 4 GB e' abbastanza alto.

Mi puoi aiutare?

il db ha solo indicizzato objectclass entryUUID entryCSN (con 700 Mb di db)

ci sono 20 repliche ed un Producer, muore solo il producer.

Una cosa che sicuramente puoi fare e' aggiornare almeno a 2.3.43, visto il numero e il tipo di fixes specificamente relative al tuo setup intercorse dalla 2.3.39. Un'altra cosa e' un run per un certo tempo del producer sotto valgrind, per verificare se ci fossero eventuali leaks:

valgrind --tool=memcheck --leak-check=full --trace-children=yes \
        slapd -s0 -d0

redirigendo l'output su un file. Se all'arresto vengono segnalate leaks definitive, allora metti il file, assieme allo slapd.conf "purgato" di dati sensibili (oscurali, ma non rimuovere linee di configurazione) ad un URL accessibile.

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
Fax:     +39 0382 476497
Email:   a...@sys-net.it
-----------------------------------

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


Rispondere a