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

(ITS#5653) Segmentation Fault running slapd with mysql back-end



Full_Name: Ollie
Version: openldap-2.3.39
OS: CentOS release 4.5 (Final)
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (89.248.134.226)


CentOS release 4.5 (Final)
openldap-2.3.39 (Stable)
mysql 5.0.27-max (Cluster) localhost
openssl-0.9.8h
libiodbc-3.52.6 (iODBC)

slapd.conf
######################
include		/usr/local/etc/openldap/schema/core.schema
include		/usr/local/etc/openldap/schema/cosine.schema
include		/usr/local/etc/openldap/schema/inetorgperson.schema

pidfile	/usr/local/var/run/slapd.pid
argsfile	/usr/local/var/run/slapd.args

allow	bind_v2

access to * by * read
access to * by * write

database	sql
dbname		openldap
dbuser		ldap
dbpasswd	<snip>

loglevel	264

suffix		"dc=example,dc=com"
rootdn		"cn=Manager,dc=example,dc=com"
#################################################

Worked perfectly with db-4.5.20 but as soon as mysql is used a segmentation
fault happens.

Strangely, if  the mysql database tables are unpopulated then slapd starts fine.
It's only once the test tables are populated that segmentation fault happens

mysql openldap < testdb_data.sql
mysql openldap < testdb_metadata.sql

iodbc
#######################
./configure --with-iodbc-inidir=/etc
make
make install

running slapd
#######################
# /usr/local/libexec/slapd -d -1
....
backsql_db_open(): setting "DELETE FROM ldap_entry_objclasses WHERE entry_id=?"
by default
==>backsql_get_db_conn()
==>backsql_open_db_conn(18446744073709551615)
<==backsql_open_db_conn(18446744073709551615)
backsql_open_db_conn(18446744073709551615): connected, adding to tree.
<==backsql_get_db_conn()
==>backsql_load_schema_map()
backsql_load_schema_map(): oc_query "SELECT
id,name,keytbl,keycol,create_proc,delete_proc,expect_return FROM
ldap_oc_mappings"
backsql_load_schema_map(): objectClass "organization":
    keytbl="institutes" keycol="id"
    expect_return: add=0, del=0; attributes:
backsql_load_schema_map(): objectClass "inetOrgPerson":
    keytbl="persons" keycol="id"
    expect_return: add=0, del=0; attributes:
backsql_load_schema_map(): objectClass "document":
    keytbl="documents" keycol="id"
    expect_return: add=0, del=0; attributes:
backsql_load_schema_map(): objectClass "referral":
    keytbl="referrals" keycol="id"
    expect_return: add=0, del=0; attributes:
backsql_load_schema_map(): at_query "SELECT
name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order,expect_return,sel_expr_u
FROM ldap_attr_mappings WHERE oc_map_id=?"
backsql_oc_get_attr_mapping(): executing at_query
    "SELECT name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order,expect_return,sel_expr_u
FROM ldap_attr_mappings WHERE oc_map_id=?"
    for objectClass "document"
    with param oc_id="2"
attributeType:
        name="(null)"
        sel_expr="(null)"
        from="(null)"
        join_where="(null)"
        add_proc="(null)"
        delete_proc="(null)"
        sel_expr_u=""
Segmentation fault

############################################
>>>>> Executing all LDAP tests for sql
>>>>> Starting sql-test000-read ...
running defines.sh
Starting slapd on TCP/IP port 9011...
Testing SQL backend read operations...
Waiting 5 seconds for slapd to start...
./scripts/sql-test000-read: line 42:  3729 Segmentation fault      $SLAPD -f
$CONF1 -h $URI1 -d $LVL $TIMING >$LOG1 2>&1
Waiting 5 seconds for slapd to start...
Waiting 5 seconds for slapd to start...
make: *** [sql-yes] Interrupt