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

Asterisk Team (JIRA) noreply at issues.asterisk.org
Wed Aug 26 10:22:33 CDT 2015


    [ https://issues.asterisk.org/jira/browse/ASTERISK-25347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=227371#comment-227371 ] 

Asterisk Team commented on ASTERISK-25347:
------------------------------------------

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

> 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