< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

Re: [reSIProcate-users] seg fault in Connection


Thanks for your help Scott and Byron!

The thing is that we've had a really strange issue with 1.8.5 on one particular system (Ubuntu 12.04.1 LTS (GNU/Linux 3.2.0-26-generic x86_64)), which have held us back from upgrading. This is the only system that has shown this issue. All other systems are fine.

The problem is that our application sometimes fails to start when we're running 1.8.5. Running 1.5 always works. There are no core-files generated and the log-files say nothing. The application just dies after a couple of minutes. With nothing more to go on than that, it's really hard to figure out what's wrong. One thing I've noted is that it always fails under high load conditions (daytime). Starting up during off-hours fails about 25% of the time.

Could we perhaps be experiencing the same issue as in this thread?
http://list.resiprocate.org/archive/resiprocate-users/msg01868.html

Cheers,
Krister

Från: Byron Campen [docfaraday@xxxxxxxxx]
Skickat: den 8 november 2012 16:33
Till: Scott Godin
Kopia: Krister Jarl; resiprocate-users@xxxxxxxxxxxxxxx
Ämne: Re: [reSIProcate-users] seg fault in Connection

There is at least one fix to some invalid memory management in the transport read buffer code since 1.5. It would have been committed sometime in April of 2011 I think (after the SIPit in Huntsville). I will try to give it a look later today. You probably want to update; lots of crash fixes in addition to new features and performance improvements.

Best regards,
Byron Campen

On Nov 8, 2012 6:04 AM, "Scott Godin" <sgodin@xxxxxxxxxxxxxxx> wrote:
A lot of work and testing was done on TCP transports in general after 1.5 (ie. EPOLL support).  There's a good chance whatever is causing this was fixed.  I'm not sure what this could be offhand.

Scott


On Thu, Nov 8, 2012 at 8:34 AM, Krister Jarl <kj@xxxxxxxxxxx> wrote:
Hi!

I got a segfault today. Not sure what triggered it.

(gdb) bt
#0  0x44552f00 in ?? ()
#1  0x083f3726 in resip::Connection::read (this=0x9b432e68, fifo=@0xaa460b94) at Connection.cxx:180
#2  0x082f4dcc in resip::ConnectionManager::process (this=0x867460c, fdset=@0xa1eb113c, fifo=@0xaa460b94) at ConnectionManager.cxx:266
#3  0x08414a3d in resip::TcpBaseTransport::process (this=0x8674490, fdSet=@0xa1eb113c) at TcpBaseTransport.cxx:241
#4  0x083baa35 in resip::TransportSelector::process (this=0xaa460c1c, fdset=@0xa1eb113c) at TransportSelector.cxx:266
#5  0x083a5799 in resip::TransactionController::process (this=0xaa460b8c, fdset=@0xa1eb113c) at TransactionController.cxx:85
#6  0x08397ef9 in resip::SipStack::process (this=0xaa43d008, fdset=@0xa1eb113c) at SipStack.cxx:527

We still run resiprocate 1.5, but the code doesn't seem to have changed that much compared to 1.8.

I should add that we run ConnectionManager::gc() at regular intervals to kill of old TCP-connections, but from what I can see the dtor of Connection removes the connection from the manager.

Regards,
Krister

_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
List Archive: http://list.resiprocate.org/archive/resiprocate-users/


_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
List Archive: http://list.resiprocate.org/archive/resiprocate-users/