[asterisk-bugs] [JIRA] (ASTERISK-25347) Asterisk Core Crash on res_odbc reload

Oliver Rafael Peña (JIRA) noreply at issues.asterisk.org
Wed Aug 26 10:22:33 CDT 2015


Oliver Rafael Peña created ASTERISK-25347:
---------------------------------------------

             Summary: Asterisk Core Crash on res_odbc reload
                 Key: ASTERISK-25347
                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-25347
             Project: Asterisk
          Issue Type: Bug
      Security Level: None
          Components: Resources/res_odbc
    Affects Versions: 11.16.0
         Environment: OS: SHMZ release 6.5 (Final)
CPU: Intel(R) Xeon(R) CPU           X5670  @ 2.93GHz
Number of Cores: 24
PostgreSQL: 9.2
postgresql-odbc: version 08.04.0200
unixODBC 2.2.14
            Reporter: Oliver Rafael Peña


Asterisk core crashed after a module reload via AMI. Here is the backtrace of the core file:

Core was generated by `/usr/sbin/asterisk -f -U asterisk -G asterisk -g -vvvg -c'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f80621f1298 in SOCK_flush_output () from /usr/lib64/psqlodbc.so
#0  0x00007f80621f1298 in SOCK_flush_output () from /usr/lib64/psqlodbc.so
No symbol table info available.
#1  0x00007f80621cf94a in ?? () from /usr/lib64/psqlodbc.so
No symbol table info available.
#2  0x00007f80621d0482 in CC_connect () from /usr/lib64/psqlodbc.so
No symbol table info available.
#3  0x00007f80621d08a1 in PGAPI_Connect () from /usr/lib64/psqlodbc.so
No symbol table info available.
#4  0x00007f8062204cf6 in SQLConnect () from /usr/lib64/psqlodbc.so
No symbol table info available.
#5  0x00007f80997018c2 in SQLConnect () from /usr/lib64/libodbc.so.2
No symbol table info available.
#6  0x00007f8099961270 in odbc_obj_connect (obj=0x7f7e502d5de8) at res_odbc.c:1554
        res = 0
        err = 56
        mlen = 0
        msg = "\306ȕ\231\200\177\000\000\226!P\000\000\000\000\000\220]-P~\177\000\000ƚ[\000\000\000\000\000\360\235[\000\000\000\000\000ę[\000A\002\000\000ę[\000\000\000\000\000\001\000\000\000\001\000\000\000\001\000\000\000\000\000\000\000\220]-P\000\000\000\000\320\331>X\177\177\000\000\240\314D\000\000\000\000\000ٝ[\000\000\000\000\000\000\000\000\000\207\002\000\000ę[", '\000' <repeats 13 times>"\306, ȕ\231\200\177\000\000\070\000\000\000\000\000\000\000\020\332>X\177\177\000\000\310]-P~\177\000\000\220]-P~\177\000\000\000\000\000\000\000\000\000\000\020\332>X\177\177\000\000\315\316D\000\000\000\000\000\002\000\000\000\000\000\000"
        state = "\003\000\000\000\000\000\000\000GP"
        con = 0x7f7d58683380
        __PRETTY_FUNCTION__ = "odbc_obj_connect"
#7  0x00007f80999606af in _ast_odbc_request_obj2 (name=0x7f7e5108a830 "asterisk-psql", flags=..., file=0x7f80999626b4 "res_odbc.c", function=0x7f8099963960 "odbc_register_class", lineno=1039) at res_odbc.c:1376
        obj = 0x7f7e502d5de8
        class = 0x0
        nativeerror = 0
        numfields = 0
        diagbytes = 0
        i = 0
        state = "0\334>X\177\177\000\000\240", <incomplete sequence \326>
        diagnostic = "`|\225\231\200\177\000\000\000\000\000\000\000\000\000\000w\b̛\200\177\000\000\004\200\002\000\001\000\003\000\240|\225\231\200\177\000\000\243\350D\000\000\000\000\000\340\021\000\000\000\000\000\000(\250\bQ~\177\000\000\340\021\000\000\001\000\000\000O\"P\000\000\000\000\000\220\333>X\177\177\000\000@[\027\006\000\000\000\000֛[\000\000\000\000\000`\235[\000\000\000\000\000\260\333>X\234\003\000\000ę[\000\000\000\000\000\300\333>X$\002\000\000x[\027\006\000\000\000\000\300\333>X\177\177\000\000\357\303D\000\000\000\000\000\b\250\bQ~\177\000\000֛[\000\000\000\000\000`\235[\000\234\003\000\000`\235[\000\000\000\000\000ę[\000\000\000\000\000\230[\027\006\000\000\000\000x[\027\006\000\000\000\000@[\027\006\000\000\000\000\030\000\000\000\001\000\000\000\000\000\000\000"...
        __PRETTY_FUNCTION__ = "_ast_odbc_request_obj2"
#8  0x00007f8099960b85 in _ast_odbc_request_obj (name=0x7f7e5108a830 "asterisk-psql", check=0, file=0x7f80999626b4 "res_odbc.c", function=0x7f8099963960 "odbc_register_class", lineno=1039) at res_odbc.c:1449
        flags = {flags = 0}
#9  0x00007f809995f06c in odbc_register_class (class=0x7f7e5108a828, preconnect=-1) at res_odbc.c:1039
        obj = 0x7f7e501e18f0
        __PRETTY_FUNCTION__ = "odbc_register_class"
#10 0x00007f809995e93d in load_odbc_config () at res_odbc.c:923
        cfg = 0x7f80999639a1 "res_odbc.conf"
        config = 0x7f7d5922b9f0
        v = 0x0
        cat = 0x7f7d584b0ae0 "asterisk-psql"
        dsn = 0x7f7d58477c74 "asterisk-connector"
        username = 0x7f7e50ea2f59 "asterisk"
        password = 0x7f7d5a2d25e9 "********"
        sanitysql = 0x0
        enabled = -1
        pooling = 0
        limit = 0
        bse = 1
        conntimeout = 10
        forcecommit = 0
        isolation = 2
        allow_empty_strings = 1
        ncache = {tv_sec = 0, tv_usec = 0}
        idlecheck = 0
        preconnect = -1
        res = 0
        config_flags = {flags = 0}
        new = 0x7f7e5108a828
        __PRETTY_FUNCTION__ = "load_odbc_config"
#11 0x00007f80999622ed in reload () at res_odbc.c:1822
        table = 0x7f805a5e45ea
        class = 0x0
        current = 0x7f7f583ede30
        aoi = {c = 0x0, flags = 0, bucket = 1, c_version = 47, obj = 0x0, version = 0}
        __PRETTY_FUNCTION__ = "reload"
#12 0x000000000050088d in ast_module_reload (name=0x0) at loader.c:807
        info = 0x7f8099b64c80
        cur = 0x61c0f20
        res = 2
        i = 14
        __PRETTY_FUNCTION__ = "ast_module_reload"
#13 0x0000000000515b7a in action_reload (s=0x7f7f583eeac0, m=0x7f7f583ee5b0) at manager.c:5015
        module = 0x5df02b ""
        res = 0
#14 0x0000000000516d78 in process_message (s=0x7f7f583eeac0, m=0x7f7f583ee5b0) at manager.c:5284
        acted = 0
        ret = 0
        act_found = 0x60db7b8
        user = 0x5e39ab "do_message"
        action = 0x7f7e51b68f78 "Reload"
        __PRETTY_FUNCTION__ = "process_message"
#15 0x000000000051769f in do_message (s=0x7f7f583eeac0) at manager.c:5497
        m = {hdrcount = 1, headers = {0x7f7e51b68f70 "Action: Reload", 0x0 <repeats 127 times>}}
        header_buf = "\000ction: Reload", '\000' <repeats 1010 times>
        res = 1
        idx = 2
        hdr_loss = 0
        now = 1440451476
        __PRETTY_FUNCTION__ = "do_message"
#16 0x0000000000517b9b in session_do (data=0x7f8074002af8) at manager.c:5618
        ser = 0x7f8074002af8
        session = 0x7f7e514af358
        s = {session = 0x7f7e514af358, tcptls_session = 0x7f8074002af8, f = 0x7f7e507aa560, fd = 1023, parsing = MESSAGE_OKAY, write_error = 0, hook = 0x0, lock = {mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 1, __spins = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 16 times>, "\001", '\000' <repeats 22 times>, __align = 0}, track = 0x0, tracking = 0}}
        flags = 2050
        res = 0
        ser_remote_address_tmp = {ss = {ss_family = 2, __ss_align = 0, __ss_padding = "\000\000\000\000\177\177\000\000\000\000\000\000\000\000\000\000\003\000\000\000\001\000\000\000`\245zP~\177\000\000\377\377\377\377\377\377\377\377jF!\235\200\177\000\000\000\000\000\000\000\000\000\000`\245zP~\177\000\000\000\000\000\000\000\000\000\000\353\220 \235\200\177\000\000\030\001\000\000\000\000\000\000\260AdP~\177\000\000\300\371>X\177\177\000\000`\245zP~\177\000"}, len = 16}
        p = 0x7f809d534930
        __PRETTY_FUNCTION__ = "session_do"
#17 0x0000000000586c3b in handle_tcptls_connection (data=0x7f8074002af8) at tcptls.c:684
        tcptls_session = 0x7f8074002af8
        ssl_setup = 0x424750 <SSL_accept at plt>
        ret = 32639
        err = "\330\354>X\177\177\000\000\340\354>X\177\177\000\000\000\000\000\000\000\000\000\000\350\354>X\177\177", '\000' <repeats 18 times>, "\020\355>X\177\177", '\000' <repeats 42 times>"\200, \021\000\000\000\000\000\000\200>IZ}\177\000\000 \000\000\000\000\000\000\000 \000\000P~\177\000\000\200\036S\235\200\177\000\000F\303!\235\200\177\000\000 \355>X\177\177\000\000\000\000\000\000\000\000\000\000\360\354>X\177\177\000\000\200\353\r\232\200\177\000\000\300\371>X\177\177\000\000\000\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000GPY", '\000' <repeats 13 times>, "6$P", '\000' <repeats 13 times>, "\031P[\000\000\000\000\000\020+\203\000\000\000\000\000\000\231[\000\000\000\000"
        __PRETTY_FUNCTION__ = "handle_tcptls_connection"
#18 0x0000000000596b37 in dummy_start (data=0x7f8074001780) at utils.c:1223
        __cancel_buf = {__cancel_jmp_buf = {{__cancel_jmp_buf = {0, 7784966215376836090, 140190317144960, 140184918096320, 0, 3, 7784966215351670266, -7856686463592688134}, __mask_was_saved = 0}}, __pad = {0x7f7f583eee90, 0x0, 0x7f7f583efa10, 0x0}}
        __cancel_routine = 0x4408e4 <ast_unregister_thread>
        __cancel_arg = 0x7f7f583ef700
        not_first_call = 0
        ret = 0x7f809d52c858
        a = {start_routine = 0x5865a3 <handle_tcptls_connection>, data = 0x7f8074002af8, name = 0x7f807400d470 "handle_tcptls_connection started at [  735] tcptls.c ast_tcptls_server_root()"}
#19 0x00007f809bcbd9d1 in start_thread (arg=0x7f7f583ef700) at pthread_create.c:301
        __res = <value optimized out>
        pd = 0x7f7f583ef700
        now = <value optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140184918095616, -7856685700394772998, 140190317144960, 140184918096320, 0, 3, 7784966215244715514, 7923598027684845050}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <value optimized out>
        pagesize_m1 = <value optimized out>
        sp = <value optimized out>
        freesize = <value optimized out>
#20 0x00007f809d28a8fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115
No locals.

Here is the portion of the full log:

[2015-08-24 17:25:13] WARNING[2352] cel_odbc.c: Unable to retrieve database handle for 'asteriskcdrdb:cel'.  CEL failed: INSERT INTO cel (
[2015-08-24 17:25:13] WARNING[2352] cel_odbc.c: Unable to retrieve database handle for 'asterisk-psql:cel'.  CEL failed: INSERT INTO cel (
[2015-08-24 17:25:13] WARNING[2352] cel_odbc.c: Unable to retrieve database handle for 'asteriskcdrdb:cel'.  CEL failed: INSERT INTO cel (
[2015-08-24 17:25:13] WARNING[2352] cel_odbc.c: Unable to retrieve database handle for 'asterisk-psql:cel'.  CEL failed: INSERT INTO cel (
[2015-08-24 17:25:13] NOTICE[27809] res_odbc.c: Connecting asterisk-psql
------- Core Restart ---------------------------------

[2015-08-24 17:25:18] Asterisk 11.16.0 built by root @ jenkins-builder1.schmoozecom.net on a x86_64 running Linux on 2015-02-10 21:31:23 UTC




--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list