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

Re: Problem indexing



Hi, yes, stopped means hung but now i try index again with slapindex -d -1 and i obtain seg fault:
indexing id=00071d00
=> ldbm_tool_entry_reindex( 466176 )
=> str2entry
<= str2entry(usuario=usuario1,o=usuarios,o=andaluciajunta,c=es) -> -1 (0x80d7458)
=> ldbm_tool_entry_reindex( 466176, "usuario=usuario1,o=usuarios,o=andaluciajunta,c=es" )
=> dn2id_add( "USUARIO=USUARIO1,O=USUARIOS,O=ANDALUCIAJUNTA,C=ES", 466176 )
=> ldbm_cache_open( "dn2id.dbb", 73, 600 )
<= ldbm_cache_open (cache 1)
<= dn2id_add 0
=> index_entry_add( 466176, "usuario=usuario1,o=usuarios,o=andaluciajunta,c=es" )
=> ldbm_cache_open( "apellido1.dbb", 73, 600 )
<= ldbm_cache_open (cache 9)
=> key_change(ADD,71d00)
<= key_change 0
=> key_change(ADD,71d00)
<= key_change 0
=> key_change(ADD,71d00)
<= key_change 0
=> key_change(ADD,71d00)
idl_insert_key: idl_fetch_one returned NULL
=> ldbm_cache_open( "nextid.dbb", 73, 600 )
Violación de segmento

I have traced process slapindex with strace and it shows:

time([1148021975])                      = 1148021975
open("/opt/openldap-2.0.27/var/openldap-ldbm-pub/nextid.dbb", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600) = -1 EEXIST (File exists)
open("/opt/openldap-2.0.27/var/openldap-ldbm-pub/nextid.dbb", O_RDWR|O_LARGEFILE) = 17
fcntl64(17, F_SETFD, FD_CLOEXEC)        = 0
_llseek(17, 0, [0], SEEK_SET)           = 0
read(17, "\0\0\0\0\0\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 256) = 256
close(17)                               = 0
open("/opt/openldap-2.0.27/var/openldap-ldbm-pub/nextid.dbb", O_RDWR|O_LARGEFILE) = 17
fcntl64(17, F_SETFD, FD_CLOEXEC)        = 0
fstat64(17, {st_mode=S_IFREG|0600, st_size=8192, ...}) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++

Thank you.



Aaron Richton wrote: 

three LDAP slave but it failed. Indexing stoped on line
indexing id=0009aa01.

Have yoy idea about it?
    


Nobody's likely to have any ideas with this little detail provided.
There are some good pointers at www.openldap.org/lists on how to
provide appropriate detail; see "Posting a Message" there.

Generically, though:

Are you stopping slapd(8) before running slapindex?

You should upgrade to the latest version of OpenLDAP (2.3.23) to ensure
that you're not running into any known issues.

If you know how to make it fail on all three slaves, you might want to
turn on debugging on one of those (slapindex -d -1) and see if any more
interesting messages are printed. I'm not sure if "stopped" means aborted
(i.e. seg fault, etc.) or hung, but there are things you should do
depending on that too: get a symbolic stack trace if you're seg faulting,
or perhaps attach truss/strace if you're hanging.