[asterisk-users] Core dump gets created while accessing voicemail

MURALI V vimurli.ace at gmail.com
Thu Aug 20 21:17:31 CDT 2009


Hi ALL,

When i was accessing the voice message it suddenly goes dead and after that
i couldn't able to retrieve the voicemessage again from my mailbox . This
happens once in a while for any configured mailboxes

I am using the following system configuration.

asterisk 1.4.22.1
odbc storage of voicemail messages
centos 5.2 64bit
unixODBC-2.2.11-7.1
mysql-connector-odbc-3.51.12-2.2
mysql-server-5.0.45-7.el5

Following are the traces i found while troubleshooting the issue.

1) I found a .lock file created in the INBOX folder of my mailbox
2) The following core dump gets created during the first time the
voicemessage access got failed.

* (gdb) bt

*#0  0x000000322b417649 in SQLFreeEnv () from /usr/lib64/libodbc.so.1
#1  0x000000322b417b5c in SQLFreeHandle () from /usr/lib64/libodbc.so.1
#2  0x00002aaac132ccdd in message_exists (dir=<value optimized out>,
msgnum=<value optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
#3  0x00002aaac132dab2 in save_to_folder (vmu=0x41751e80, vms=<value
optimized out>, msg=0, box=<value optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
#4  0x00002aaac132dc77 in close_mailbox (vms=0x4174bd60, vmu=0x41751e80)
from /usr/lib/asterisk/modules/app_voicemail.so
#5  0x00002aaac1341b43 in vm_execmain (chan=0x2aaab42abe30, data=<value
optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
#6  0x0000000000481e2d in pbx_extension_helper (c=0x2aaab42abe30, con=<value
optimized out>,
    context=0x2aaab42ac080 "staff-international", exten=0x2aaab42ac0d0
"*97", priority=106, label=<value optimized out>,
    callerid=0xbff51d0 "1369", action=E_SPAWN) at pbx.c:537
#7  0x0000000000483b66 in __ast_pbx_run (c=0x2aaab42abe30) at pbx.c:2317
#8  0x0000000000484849 in pbx_thread (data=0x322b663b40) at pbx.c:2621
#9  0x00000000004aef5c in dummy_start (data=<value optimized out>) at
utils.c:912
#10 0x000000322b006307 in start_thread () from /lib64/libpthread.so.0
#11 0x000000322a4d1ded in clone () from /lib64/libc.so.6

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*(gdb)bt full
*
#0  0x000000322b417649 in SQLFreeEnv () from /usr/lib64/libodbc.so.1
#1  0x000000322b417b5c in SQLFreeHandle () from /usr/lib64/libodbc.so.1
#2  0x00002aaac132ccdd in message_exists (dir=<value optimized out>,
msgnum=<value optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
#3  0x00002aaac132dab2 in save_to_folder (vmu=0x41751e80, vms=<value
optimized out>, msg=0, box=<value optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
#4  0x00002aaac132dc77 in close_mailbox (vms=0x4174bd60, vmu=0x41751e80)
from /usr/lib/asterisk/modules/app_voicemail.so
#5  0x00002aaac1341b43 in vm_execmain (chan=0x2aaab42abe30, data=<value
optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
#6  0x0000000000481e2d in pbx_extension_helper (c=0x2aaab42abe30, con=<value
optimized out>,
    context=0x2aaab42ac080 "staff-international", exten=0x2aaab42ac0d0
"*97", priority=106, label=<value optimized out>,
    callerid=0xbff51d0 "1369", action=E_SPAWN) at pbx.c:537
#7  0x0000000000483b66 in __ast_pbx_run (c=0x2aaab42abe30) at pbx.c:2317
#8  0x0000000000484849 in pbx_thread (data=0x322b663b40) at pbx.c:2621
#9  0x00000000004aef5c in dummy_start (data=<value optimized out>) at
utils.c:912
#10 0x000000322b006307 in start_thread () from /lib64/libpthread.so.0
#11 0x000000322a4d1ded in clone () from /lib64/libc.so.6
(gdb) bt full
#0  0x000000322b417649 in SQLFreeEnv () from /usr/lib64/libodbc.so.1
No symbol table info available.
#1  0x000000322b417b5c in SQLFreeHandle () from /usr/lib64/libodbc.so.1
No symbol table info available.
#2  0x00002aaac132ccdd in message_exists (dir=<value optimized out>,
msgnum=<value optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
        x = 1
        stmt = (SQLHSTMT) 0xbf45620
        sql = "SELECT COUNT(*) FROM voicemessages WHERE dir=? AND
msgnum=?\000\000\000\000\000`}tA\000\000\000\000\225-N\000\000\000\000\000(\000\000\0000\000\000\000ТtA\000\000\000\000à¡tA\000\000\000\000\032\224F*2\000\000\000\001\200­û\000\000\000\000Ø\226#\f\000\000\000\000Ø\226#\f\000\000\000\000Ø\226#\f\000\000\000\000Ø\226#\f\000\000\000\000\003\227#\f\000\000\000\000\212\227#\f\000\000\000\000Ø\226#\f\000\000\000\000\212\227#\f",
'\0' <repeats 52 times>, "¨þH*2\000\000\000@Þ"...
        rowdata = "1\000k/voicemail/admin/"
        msgnums = "31\000\000\000\000\000\000¦-N\000\000\000\000\000/var"
        argv = {0x41748c10
"/var/spool/asterisk/voicemail/admin/1369/Delete", 0x41748b70 "31"}
        gps = {sql = 0x41747b50 "SELECT COUNT(*) FROM voicemessages WHERE
dir=? AND msgnum=?", argc = 2, argv = 0x41748bb0}
        obj = (struct odbc_obj *) 0xbc0a860
        __PRETTY_FUNCTION__ = "message_exists"
#3  0x00002aaac132dab2 in save_to_folder (vmu=0x41751e80, vms=<value
optimized out>, msg=0, box=<value optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
        dir = 0x4174be50 "/var/spool/asterisk/voicemail/admin/1369/INBOX"
        username = 0x4174bdb0 "1369"
        context = <value optimized out>
        sfn =
"/var/spool/asterisk/voicemail/admin/1369/INBOX/msg0000\000\000°­tA\000\000\000\000æ®tA\000\000\000\000\006¯tA\000\000\000\000À®tA\000\000\000\000\020í\004\f\000\000\000\000Í\000\024\003[\000\027ÿB\000P\000ìÿóÿ·ÿº\000\003\000a\000\001\000ýÿËÿÕÿ\016\000@
\000e\000ôÿ\231\000\\\000\004\000\002\000éÿÈÿ$\000¯\000U\000;\000¤ÿ»ÿ.\000Ûÿ·ÿ»ÿkÿ\231ÿüÿ½þ\214þ\033ÿ6ÿ¶þ'\000\201\0003ÿÍ\000\024\003\203\000\027ÿB\000"...
        dfn =
"/var/spool/asterisk/voicemail/admin/1369/Delete/msg0031\000æ\224ÿ\v\000\000\000\000è\224ÿ\v\000\000\000\000ê\224ÿ\v\000\000\000\000ì\224ÿ\v\000\000\000\000î\224ÿ\v\000\000\000\000ð\224ÿ\v\000\000\000\000ò\224ÿ\v\000\000\000\0003\2133[Ì,h&
\237\a´ª*\000\0000¾*´ª*\000\000\000\000\000\000\000\000\000\000Ð6#\f\000\000\000\000\b(,\f\000\000\000\000\b(,\f\000\000\000\000\037½§¾ª*\000\000.\237tA\000\000\000\000iú+¿ª*\000\000P³)´ª*\000\000"...
        ddir = "/var/spool/asterisk/voicemail/admin/1369/Delete\000@
\000\000\000\000\000\000\000\0371D*2\000\000\000°\222tA\000\000\000\000DÞF*2\000\000\000Ð\215tA\000\000\000\0000\223tA\000\000\000\000LVN\000\000\000\000\000LVN\000\000\000\000\000ð·tA\000\000\000\000JVN\000\000\000\000\000\000\223tA\000\000\000\000\002\000\000\000\000\000\000\000\020\216tA\000\000\000\000\000\000\000\000@",
'\0' <repeats 11 times>, "ÿÿÿÿÿÿÿÿKVN\000\000\000\000\000JVN", '\0' <repeats
13 times>, "¸\221tA"...
        x = 31
        __PRETTY_FUNCTION__ = "save_to_folder"
#4  0x00002aaac132dc77 in close_mailbox (vms=0x4174bd60, vmu=0x41751e80)
from /usr/lib/asterisk/modules/app_voicemail.so
        x = 0
        res = <value optimized out>
        __PRETTY_FUNCTION__ = "close_mailbox"
#5  0x00002aaac1341b43 in vm_execmain (chan=0x2aaab42abe30, data=<value
optimized out>)
   from /usr/lib/asterisk/modules/app_voicemail.so
        opts = {0xbe5a108 "VoiceMailMain", 0x1b <Address 0x1b out of
bounds>}
---Type <return> to continue, or q <return> to quit---
        args = {argc = 1, argv = 0x41752928, argv0 = 0x4174bcc0 "1369",
argv1 = 0x0}
        res = -1
        cmd = 0
        valid = 1
        u = (struct ast_module_user *) 0xbfcfcf0
        prefixstr = '\0' <repeats 79 times>
        ext_context = '\0' <repeats 255 times>
        useadsi = 0
        skipuser = 1098195280
        vms = {curbox = "INBOX", '\0' <repeats 74 times>, username = "1369",
'\0' <repeats 75 times>,
  context = '\0' <repeats 79 times>, curdir =
"/var/spool/asterisk/voicemail/admin/1369/INBOX", '\0' <repeats 4049 times>,
  vmbox = "vm-INBOX", '\0' <repeats 4087 times>,
  fn = "/var/spool/asterisk/voicemail/admin/1369/INBOX/msg0000", '\0'
<repeats 4041 times>,
  fn2 = "/var/spool/asterisk/voicemail/admin/1369/INBOX/msg0000", '\0'
<repeats 4041 times>, deleted = 0xbf44770,
  heard = 0xc16d6a0, curmsg = -1, lastmsg = 0, newmessages = 0, oldmessages
= 23, starting = 0, repeats = 0}
        vmu = (struct ast_vm_user *) 0x41751e80
        vmus = {context = "admin", '\0' <repeats 74 times>, mailbox =
"1369", '\0' <repeats 75 times>,
  password = "1234", '\0' <repeats 75 times>, fullname = "HR Temp", '\0'
<repeats 72 times>,
  email = '\0' <repeats 79 times>, pager = '\0' <repeats 79 times>,
serveremail = '\0' <repeats 79 times>,
  mailcmd = '\0' <repeats 159 times>, language = '\0' <repeats 19 times>,
zonetag = '\0' <repeats 79 times>,
  callback = '\0' <repeats 79 times>, dialout = '\0' <repeats 79 times>,
uniqueid = '\0' <repeats 79 times>,
  exit = '\0' <repeats 79 times>, attachfmt = '\0' <repeats 19 times>, flags
= 608, saydurationm = 2, maxmsg = 100,
  volgain = 0, list = {next = 0x0}}
        context = 0x4174bcc5 "admin"
        silentexit = 0
        flags = {flags = 0}
        record_gain = 0 '\0'
        play_auto = 0
        play_folder = 0
        __PRETTY_FUNCTION__ = "vm_execmain"
#6  0x0000000000481e2d in pbx_extension_helper (c=0x2aaab42abe30, con=<value
optimized out>,
    context=0x2aaab42ac080 "staff-international", exten=0x2aaab42ac0d0
"*97", priority=106, label=<value optimized out>,
    callerid=0xbff51d0 "1369", action=E_SPAWN) at pbx.c:537
        e = <value optimized out>
        app = (struct ast_app *) 0xbe5a0e0
        res = <value optimized out>
        q = {incstack = {0xc46cc48 "", 0xc3467e8 "", 0xc475fd8 "", 0xc34a768
"", 0xbddfad8 "", 0xc316828 "broadcast",
    0xc360928 "", 0xc361028 "", 0xc3619a8 "", 0xc362178 "", 0xc362ae8 "",
0xc362fb8 "", 0xc363e48 "", 0xc348338 "",
    0xc349a08 "", 0xc4f4478 "", 0x0 <repeats 112 times>}, stacklen = 16,
status = 5, swo = 0x0, data = 0x0,
  foundcontext = 0xc46d423 ""}
        passdata = "1369 at admin", '\0' <repeats 8181 times>
        matching_action = <value optimized out>
        __PRETTY_FUNCTION__ = "pbx_extension_helper"
#7  0x0000000000483b66 in __ast_pbx_run (c=0x2aaab42abe30) at pbx.c:2317
---Type <return> to continue, or q <return> to quit---
        waittime = <value optimized out>
        dst_exten = "\000\000\000\000\000\000\000\000HpuA", '\0' <repeats 20
times>, "ppuA", '\0' <repeats 28 times>, "\030", '\0' <repeats 15 times>,
"PpuA\000\000\000\000XpuA\000\000\000\000`puA\000\000\000\000hpuA\000\000\000\000xpuA",
'\0' <repeats 12 times>, "\200puA\000\000\000\000$Ç\000+2", '\0' <repeats 27
times>, " ét*2", '\0' <repeats 11 times>,
"@/n\f\000\000\000\000À\000\002\000\000\000\000\000\030\000\000\000\000\000\000\000
ét*2\000\000\000³+G*2",
'\0' <repeats 11 times>,
"°Õþ\v\000\000\000\000PD\"´ª*\000\000\000\000\000\000\000\000"...
        pos = 1098215488
        digit = 0
        found = 1
        res = 0
        error = <value optimized out>
        __PRETTY_FUNCTION__ = "__ast_pbx_run"
#8  0x0000000000484849 in pbx_thread (data=0x322b663b40) at pbx.c:2621
No locals.
#9  0x00000000004aef5c in dummy_start (data=<value optimized out>) at
utils.c:912
        __cancel_buf = {__cancel_jmp_buf = {{__cancel_jmp_buf =
{46912654951504, 1544153348009866706, 0, 1098217792,
        4910848, 4096, 1544153346949956930, 1544153348004993680},
__mask_was_saved = 0}}, __pad = {0x417571d0, 0x0,
    0x322a749880, 0x322a749888}}
        __cancel_arg = (void *) 0x41757940
        not_first_call = <value optimized out>
        ret = <value optimized out>
#10 0x000000322b006307 in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#11 0x000000322a4d1ded in clone () from /lib64/libc.so.6
No symbol table info available.



Can any one please help me to trace down the issue using the core dump.

Thanks in advance.

vimurli

-- 
always   with    smile
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20090821/442abb64/attachment-0001.htm 


More information about the asterisk-users mailing list