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

RE: 2.1.30: "make test" fails with a SEGV

Title: Message
Sorry...I don't know why slapd requires so much memory that it
           requires a ulimit adjustment.
I can only tell you that on AIX 5.1.0 ML5 with normal ulimit,
that when running "make test" on openldap 2.1.30 with Bdb 4.2.52,
fails in test8, due to a bad return from ber_malloc() in ch_malloc.c. 
This produces a 131,209,647 byte core file. 
The core file shows 16 threads were running. 
A stack trace on the thread that was running shows:
(dbx) where
pthread_kill(??, ??) at 0xd005ab14
_p_raise(??) at 0xd005a120
raise.raise(??) at 0xd01e3714
abort() at 0xd01f2380
__assert(??, ??, ??) at 0xd02769b4
ch_malloc(0x800000), line 38 in "ch_malloc.c"
search_stack(0x202af9f8, 0x216e3d38), line 987 in "search.c"
search_candidates(0x202af9f8, 0x216e3d38, 0x24749ce8, 0x21ef8ad8, 0x2, 0x0, 0x22a8b160), line 1100 in "search.c"
bdb_search(0x202af9f8, 0x202cb768, 0x216e3d38, 0x22b0b1e0, 0x22b0b1e8, 0x2, 0x0, 0x1f4), line 343 in "search.c"
do_search(0x202cb768, 0x216e3d38), line 401 in "search.c"
connection_operation(0x216e3dc8, 0x216e3d38), line 943 in "connection.c"
ldap_int_thread_pool_wrapper(0x202723a8), line 432 in "tpool.c"
_pthread_body(??) at 0xd004b40c
When I set "ulimit -d 220000", it runs to completion.
In case it matters:
    Original ulimit values:
        time(seconds)        unlimited
        file(blocks)         2097151
        data(kbytes)         131072
        stack(kbytes)        32768
        memory(kbytes)       32768
        coredump(blocks)     2097151
        nofiles(descriptors) 2000
            RS6000 Model H70 - 2 Gig of memory
I have to add that I've stopped trying to solve the problem, because
we do not intend to run slapd.
Sorry I couldn't be helpful, perhaps someone else on the list could help.
-----Original Message-----
From: Lalgondar, Yerri [mailto:yerri.lalgondar@ubs.com]
Sent: Tuesday, June 15, 2004 11:02 AM
To: Bennett, Tony - CNF
Subject: RE: 2.1.30: "make test" fails with a SEGV



I also have exact pronlem my malloc() call is exiting while doing ssh on AIX 4.3.3/5.1/5.2 m/c.

I am using openldap/BerkeleyDB and compiled exactly same way as u explained below in your email.

I increased the ulimit values of all the parameters to "unlimited".


But still malloc call falis in  ber_memalloc( ) function in /libraries/liblber/memory.c  file.


Can u tell me what is exactly wrong.



With Best Regards


Sorry to respond to my own posting, but I wanted the solution to go into the List's Archive.  

I did two things to make "make test" complete successfully:  

  • I updated AIX 5.1 from Maintenance Level 4 to Maintenance Level 5 This got me past test001-slapadd but I failed in test008-concurrency... ...as a result of an assert(0) call when a malloc failed...!!!
  • I increased my "ulimit" values substantially

Now it works.  


        -----Original Message-----
        From: owner-openldap-software@OpenLDAP.org

[mailto:owner-openldap-software@OpenLDAP.org] On Behalf Of Bennett, Tony

        Sent: Friday, June 04, 2004 8:02 AM
        To: openldap-software@OpenLDAP.org
        Subject: 2.1.30: "make test" fails with a SEGV
        Any insites would be greatly appreciated. 
        Problem description: 
                "make test" fails in "test001-slapadd" due to a
segmentation violation in slapd 
                (note: test000-rootdse succeeded) 
                Hardware:       IBM RS6000 H70
                OS:             AIX 5.1 
                Compiler:       "C for AIX" version 6.0 
                SASL:           cyrus-sasl-2.1.18 
                                configure directive: 
                                CC=cc_r \ 

--with-openssl=/usr/local/ssl \ 

                                            --disable-krb4 \ 
                LDAP:           OpenLDAP 2.1.30 
                                configure directive: 
                                CC=xlc_r        \ 
                                CPPFLAGS="-I/usr/local/include \ 
                                          -I/usr/local/ssl/include \ 

-I/usr/local/BerkeleyDB.4.2/include" \ 

                                    LDFLAGS="-L/usr/local/ssl/lib     \ 
                                             -L/usr/local/lib \ 

-L/usr/local/BerkeleyDB.4.2/lib" \

MKDEP=/dnload/ldap_dir/openldap-2.1.30/build/mkdep.aix \

                                ./configure --with-cyrus-sasl  \ 
                                            --enable-bdb       \ 
                                            --with-kerberos    \ 
                                            --disable-shared   \ 
                                            --enable-static    \ 
        Stack Trace: 
                [root:doc]/dnload/ldap_dir/openldap-2.1.30/tests> dbx
                Type 'help' for help. 
                reading symbolic information ... 
                [using memory image in core] 
                Segmentation fault in moveeq.memmove [/usr/lib/libc.a]
at 0xd01d1758 ($t2) 
                0xd01d1758 (memmove+0x118) 7ca0242a       lswx
                (dbx) where 
                moveeq.memmove() at 0xd01d1758 
                getaddrinfo2(??, ??, ??, ??) at 0xd031e6c0 
                getaddrinfo(??, ??, ??, ??) at 0xd031f460 
                _sasl_ipfromstring(0x212cf058, 0x0, 0x0), line 1676 in
                unnamed block $b644, line 779 in "common.c" 
                sasl_setprop(0x212cf098, 0x8, 0x212cf058), line 779 in
                _sasl_conn_init(0x212cf098, 0x1022b1e4, 0x4, 0x1,

0x200385fc, 0x212cf038, 0x212cf058, 0x212cf078), line 378 in "common.c"

                sasl_server_new(0x1022b1e4, 0x212cf038, 0x0, 0x212cf058, 0x212cf078, 0x202c9fa8, 0x4, 0x2128cca0), line 851 in "server.c"

                slap_sasl_open(0x202cb270), line 1040 in "sasl.c" 
                connection_init(0x9, 0x202721b8, 0x102223a4, 0x2128ee88,
0x0, 0x0, 0x0), line 559 in "connection.c" 
                unnamed block $b8, line 1686 in "daemon.c" 
                unnamed block $b4, line 1686 in "daemon.c" 
                slapd_daemon_task(0x0), line 1686 in "daemon.c" 
                _pthread_body(??) at 0xd004b3ec 
                - I wrote a stub program that calls _sasl_ipfromstring()
with the same values that it was 
                  called from (i.e. 0x212cf058 = ""), and

it worked fine. Received on 2004-06-04 23:51:14

Please do not transmit orders or instructions regarding a UBS account by email. The information provided in this email or any attachments is not an official transaction confirmation or account statement. For your protection, do not include account numbers, Social Security numbers, credit card numbers, passwords or other non-public information in your email. Because the information contained in this message may be privileged, confidential, proprietary or otherwise protected from disclosure, please notify us immediately by replying to this message and deleting it from your computer if you have received this communication in error. Thank you.

UBS Financial Services Inc.

UBS International Inc.