[Serusers] ser segfault in function lookup()

Marian Dumitru marian.dumitru at voice-sistem.ro
Sun Oct 3 20:43:34 CEST 2004


Hi Markus,

I'm not 100% sure the crash is caused by NULL callid in the db table. 
SER is able to skip this kind on error on load an you will get something 
like:

 0(0) preload_udomain: ERRROR: bad callid record in table voicemail
 0(0) preload_udomain: ERRROR: for username user1, contact sip:contact at ip
 0(0) preload_udomain: ERRROR: skipping...

see modules/usrloc/udomain.c function preload_udomain()

the bet way to make some light is to generate a core when ser crashes 
and to look at the backtrace.
to enable coredump, be sure to do "ulimit -c ulimited" set before 
running ser.

regards,
Marian


markus monka wrote:

>sorry, i forgot
>
>version:  0.8.14 (i386/linux)
>flags: STATS:Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, DNS_IP_HACK,
>SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
>ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
>MAX_URI_SIZE 1024, BUF_SIZE 65535
>@(#) $Id: main.c,v 1.168.4.3 2004/06/28 15:41:21 andrei Exp $
>main.c compiled on 02:18:40 Sep 11 2004 with gcc 2.95
>
>SMP XEON(HT) with 1 GB Ram
>
>Am Son, den 03.10.2004 schrieb Jiri Kuthan um 17:37:
>  
>
>>Which version do you use? -jiri
>>
>>At 04:42 PM 10/3/2004, markus monka wrote:
>>    
>>
>>>I made a copy of the location table for users having a mailbox.
>>>
>>>While getting the data from the Database, 
>>>ser crashes.
>>>
>>>ser.cfg
>>>-----
>>>if ( lookup(voicemail) ) {
>>>
>>>}
>>>
>>>syslog(DEBUG 10)
>>>-----
>>>Oct  3 13:48:39 ser04 /usr/sbin/ser[16453]: query="select
>>>username,contact,expires,q,callid,cseq,replicate,state,flags,user_agent
>>>      
>>>
>>>from voicebox "
>>    
>>
>>>Oct  3 13:48:59 ser04 exiting on signal 15
>>>
>>>strace -f
>>>-----
>>>18845 read(4, "\0078702713\30sip:123456 at 217.11.29.3"...,69)=69
>>>18845 read(4, "\1\0\0\275", 4)          = 4
>>>18845 read(4, "\376", 1)                = 1
>>>18845 --- SIGSEGV (Segmentation fault) ---
>>>18845 +++ killed by SIGSEGV +++
>>>
>>>DB has 5299 rows.
>>>
>>>some of the Callids are "NULL". After updating the Entry for Callid with
>>>a random
>>>Id ser starts as usual.
>>>
>>>Any Ideas?
>>>
>>>Greets 
>>>Markus
>>>
>>>_______________________________________________
>>>Serusers mailing list
>>>serusers at lists.iptel.org
>>>http://lists.iptel.org/mailman/listinfo/serusers
>>>      
>>>
>>--
>>Jiri Kuthan            http://iptel.org/~jiri/
>>    
>>




More information about the sr-users mailing list