[Users] troubles with usrloc module: db_mode=3 (DB only)

Christian Schlatter cs at unc.edu
Thu Jun 8 17:29:46 CEST 2006


Hi Bogdan,

Bogdan-Andrei Iancu wrote:
> Hi Christian,
> 
> could you also send the crashing line from gdb ? (just printed when 
> entering gdb). Also could you try with nathelper?

First line of gdb is:

Core was generated by `/opt/openser-devel/sip-server/openser -f 
/etc/openser-cvs/openser.cfg -w /var/t'.
Program terminated with signal 11, Segmentation fault.

I also tried it with the nathelper nat ping settings:

# -- nathelper params --
modparam("nathelper", "rtpproxy_disable", 1)
modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "sipping_from", "sip:ping at sip1.unc.edu")

# -- mediaproxy params --
modparam("mediaproxy","natping_interval", 0)

The server seg faults exactly the same as with the mediaproxy nat ping 
feature:

Core was generated by `/opt/openser-devel/sip-server/openser -f 
/etc/openser-cvs/openser.cfg -w /var/t'.
Program terminated with signal 11, Segmentation fault.

#0  0x0053f392 in get_all_db_ucontacts (buf=0x81364c0, len=872, flags=0) 
at dlist.c:150
#1  0x0018ebf8 in nh_timer (ticks=30, param=0x0) at nathelper.c:2115
#2  0x08088afb in timer_ticker () at timer.c:141
#3  0x08063e94 in main_loop () at main.c:988
#4  0x0806504c in main (argc=7, argv=0xbfffac94) at main.c:1473


thanks,
Christian


> Thanks and regards,
> bogdan
> 
> Christian Schlatter wrote:
> 
>> Bogdan-Andrei Iancu wrote:
>>
>>> Hi Christian,
>>>
>>> getting a backtrace will be very, very helpful. be sure the you are 
>>> using exactly the same binaries as the ones generating the core file.
>>>
>>> Also, could you describe the scenario leading to the crash? also set 
>>> debug=9 and the log will be very useful.
>>
>>
>> Ok, I got some more insights now (I took the wrong binary for the 
>> backtrace). The whole issue seems to be related to the nat_pinging 
>> function of the mediaproxy module in combination with db_mode=3. But 
>> first the backtrace:
>>
>> #0  0x00b2b392 in get_all_db_ucontacts (buf=0x8135e20, len=252, 
>> flags=1) at dlist.c:150
>> #1  0x002cfcf0 in pingClients (ticks=30, param=0x0) at functions.h:44
>> #2  0x08088afb in timer_ticker () at timer.c:141
>> #3  0x08063e94 in main_loop () at main.c:988
>> #4  0x0806504c in main (argc=7, argv=0xbfff8de4) at main.c:1473
>>
>> And these are my nat_pinging settings:
>>
>> # -- nathelper params --
>> modparam("nathelper", "rtpproxy_disable", 1)
>> modparam("nathelper", "natping_interval", 0)
>>
>> # -- mediaproxy params --
>> modparam("mediaproxy","natping_interval", 30)
>>
>>
>> If I disable the nat pinging by setting the interval 0 the server just 
>> runs fine with db_mode=3. I haven't tested yet if the nathelper 
>> nat_pinging causes the same issues as the mediaproxy one.
>>
>> This is what the debug=9 log tells (I filtered the log for messages 
>> from the process the crashes):
>>
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=tm
>> [21065]: DEBUG: callid: '7fbb7eae-21065 at 152.2.19.138'
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=usrloc
>> [21065]: db_init: Connection 
>> 'mysql://openser:openserrw@localhost/openser' not found in pool
>> [21065]: new_connection: Opening MySQL connection: 
>> mysql://openser:openserrw@localhost/openser
>> [21065]: new_connection: Connection type is Localhost via UNIX socket
>> [21065]: new_connection: Protocol version is 10
>> [21065]: new_connection: Server version is 3.23.58-classic-log
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=alias_db
>> [21065]: db_init: Connection 
>> 'mysql://openser:openserrw@localhost/openser' found in pool
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=auth_db
>> [21065]: db_init: Connection 
>> 'mysql://openserro:openserro@localhost/openser' not found in pool
>> [21065]: new_connection: Opening MySQL connection: 
>> mysql://openserro:openserro@localhost/openser
>> [21065]: new_connection: Connection type is Localhost via UNIX socket
>> [21065]: new_connection: Protocol version is 10
>> [21065]: new_connection: Server version is 3.23.58-classic-log
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=uri_db
>> [21065]: db_init: Connection 
>> 'mysql://openser:openserrw@localhost/openser' found in pool
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=domain
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=nathelper
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=avpops
>> [21065]: db_init: Connection 
>> 'mysql://openser:openserrw@localhost/openser' found in pool
>> [21065]: DEBUG:init_mod_child: PROC_TIMER , rank=-1, module=xlog
>> [21065]: XLOG: init_child [-1]  pid [21065]
>> [21070]: DBG: handle_ser_child: dead child 6, pid 21065 (shutting down?)
>> [21054]: child process 21065 exited by a signal 11
>> [21054]: core was generated
>>
>>
>> Thanks a lot for looking at that,
>> Christian
>>
>>
>>> regards,
>>> bogdan
>>>
>>> Christian Schlatter wrote:
>>>
>>>> Hi all,
>>>>
>>>> Running openser (CVS HEAD) with usrloc:db_mode=3 causes it to crash 
>>>> repeatedly after 15 secs or so. The core dump does not say much except
>>>>
>>>> (gdb) bt
>>>> #0  0x00b2b392 in ?? ()
>>>> #1  0x08131468 in mem_pool ()
>>>> #2  0xbfff8b54 in ?? ()
>>>> #3  0xbfff8b54 in ?? ()
>>>> #4  0x00000008 in ?? ()
>>>> #5  0x00b3adbf in ?? ()
>>>> #6  0x00000007 in ?? ()
>>>> #7  0x00b3a88c in ?? ()
>>>> #8  0x00000006 in ?? ()
>>>> #9  0x00b3adcd in ?? ()
>>>> #10 0x00000005 in ?? ()
>>>> #11 0x00b3adae in ?? ()
>>>> #12 0xb576a560 in ?? ()
>>>> #13 0x00000007 in ?? ()
>>>> #14 0x00b39c59 in ?? ()
>>>> #15 0x00000005 in ?? ()
>>>> #16 0x00b3adae in ?? ()
>>>> #17 0x00000001 in ?? ()
>>>> #18 0x00000001 in ?? ()
>>>> #19 0x00000000 in ?? ()
>>>>
>>>>
>>>> The openser log looks like:
>>>>
>>>> ERROR: receive_fd: EOF on 16
>>>> child process 18101 exited by a signal 11
>>>> core was generated
>>>>
>>>>
>>>> I also don't see any mysql errors. The last mysql query issued by 
>>>> openser before dying is always
>>>>
>>>> Query  delete from location where expires<'2006-06-05 16:03:17'
>>>> (only the timestamp changes)
>>>>
>>>> Deleting all location table entries before starting up openser does 
>>>> not help either. Is there something special I have to consider when 
>>>> running openser in DB-only mode?
>>>>
>>>> Thanks for any help,
>>>> Christian
>>>>
>>>> ------------------------------------------------------------------------ 
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at openser.org
>>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>>>  
>>>>
>>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Users mailing list
>> Users at openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/users
>>  
>>
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 1951 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20060608/efd363d3/attachment.bin>


More information about the sr-users mailing list