[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#6691) error 4 in slapd: segfault with back-sql in debian amd64
> Full_Name: Andrés Marenco Zúñiga
> Version: 2.4.23 (20100719)
> OS: Debian 5.06 amd64
> URL:
> Submission from: (NULL) (201.198.99.66)
>
>
> I'm getting a segfault while doing any search in openldap. This is my
> configuration:
>
> Debian 5.06 amd64 (kernel 2.6.26-2-amd64)
> OpenLDAP 2.4.23 (20100719)
> UnixODBC 2.3.0
> PostgreSQL 8.2.10
> psqlodbc 09.00.0101
>
>
> #############################################################################
> slapd.conf (the relevant parts)
> #############################################################################
> include /var/lib/openldap/etc/openldap/schema/core.schema
> include /var/lib/openldap/etc/openldap/schema/cosine.schema
> include /var/lib/openldap/etc/openldap/schema/inetorgperson.schema
>
> pidfile /var/lib/openldap/var/slapd.pid
> argsfile /var/lib/openldap/slapd.args
>
> database sql
> suffix "dc=example,dc=com"
> rootdn "cn=root,dc=example,dc=com"
> rootpw secret
> dbname PgSQL
> dbuser ""
> dbpasswd ""
> insentry_stmt "insert into ldap_entries (id,dn,oc_map_id,parent,keyval)
> values
> ((select max(id)+1 from ldap_entries),?,?,?,?)"
> upper_func "upper"
> strcast_func "text"
> concat_pattern "?||?"
> has_ldapinfo_dn_ru no
>
> lastmod off
>
>
>
> #############################################################################
> odbcinst.ini
> #############################################################################
> [PostgreSQL]
> Description=ODBC for PostgreSQL
> Driver=/usr/local/lib/psqlodbcw.so
>
>
> #############################################################################
> odbc.ini
> #############################################################################
> [PgSQL]
> Driver=/usr/local/lib/psqlodbcw.so
> Description=Connection to LDAP/POSTGRESQL
> Server=xxx.xxx.xxx.xxx
> Port=5432
> Protocol=6.4
> FetchBufferSize=99
> Database=db
> Username=user
> ReadOnly=no
> CommLog=1
>
>
>
>
>
>
> slapd starts fine, but when I make any search this is what I'm getting:
>
> <= send_search_entry: conn 1000 exit.
> send_ldap_result: conn=1000 op=2 p=3
> send_ldap_result: err=0 matched="" text=""
> send_ldap_response: msgid=3 tag=101 err=0
> ber_flush2: 14 bytes to sd 11
> 0000: 30 0c 02 01 03 65 07 0a 01 00 04 00 04 00 0....e........
> ldap_write: want=14, written=14
> 0000: 30 0c 02 01 03 65 07 0a 01 00 04 00 04 00 0....e........
> conn=1000 op=2 SEARCH RESULT tag=101 err=0 nentries=1 text=
> Segmentation Fault (Core Dumped)
>
>
>
> in the syslog this is what I have:
>
> Oct 29 17:53:17 td-server slapd[32026]: conn=1000 op=2 SEARCH RESULT
> tag=101
> err=0 nentries=1 text=
> Oct 29 17:53:17 td-server kernel: [10058.462325] slapd[32029]: segfault at
> ffffffde0274e4a0 ip 46c23b sp 425d7570 error 4 in slapd[400000+161000]
>
>
>
> and the gdb backtrace shows this:
>
> Core was generated by `/var/lib/openldap/libexec/slapd -d -1'.
> Program terminated with signal 11, Segmentation fault.
> [New process 31991]
> [New process 31987]
> [New process 31990]
> #0 0x000000000046c23b in ?? ()
> #1 0x0000000000499903 in ?? ()
> #2 0x000000000049e01b in ?? ()
> #3 0x000000000041ed51 in ?? ()
> #4 0x000000000041f54c in ?? ()
> #5 0x000000000041cb5f in ?? ()
> #6 0x000000000041d7dc in ?? ()
> #7 0x00000000004c8760 in ?? ()
> #8 0x00007fe1a4861fc7 in start_thread () from /lib/libpthread.so.0
> #9 0x00007fe1a45d764d in clone () from /lib/libc.so.6
> #10 0x0000000000000000 in ?? ()
This trace is useless; since the issue appears to be repeatable, you
should retry with slapd built with debugging symbols and unstripped.
>
>
>
>
> Everything works fine in 32bits (Debian 5.0 i386), but it fails with
> 64bits.
>
> Any idea?
>
Moreover, you may want to try with HEAD code, where some modifications to
deal with 64 bit (long int) key values. Should be unrelated, but just in
case...
p.