Hello,

On 4/8/13 10:13 AM, Juha Heinanen wrote:
Juha Heinanen writes:

i'm not sure if it is related, but today i noticed too that there is an
old record in my location table which has expired couple of hours ago.
the record does not show up with ul_dump command, so it has been removed
from memory.  usrloc db_mode=1.
after restart of kamailio, the expired record disappeared after some
time after restart, but looks like it would never have disappeared
without restart.

I started a discussion with subject "SIP contact matching - location db ops" at the end of March, following a report on tracker.

The problem showed up very likely because the UA changed the call-id -- there are different matching algorithms, but seems they are only for in-memory lookup, the database operations (update/delete) seem to be always matching on contact address and call-id. That means in memory records are fine, but database can get some old records not deleted.

After analysis the best solution seems to be to match on ruid for database operations, because matching on path will be very inefficient (contact or contact+callid should still be quite ok). But I didn't have any time to code it, not sure I will find some spare time during the next two weeks, maybe someone else can look into it -- it has to review if ruid is updated in any case (which I don't think so, but should be double-checked) and the big part will be actually testing, as coding should even simplify the sql queries. I haven't looked at DB only mode to see if it requires some special care.

Cheers,
Daniel

Cheers,
Daniel

--
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio World Conference, April 16-17, 2013, Berlin
 - http://conference.kamailio.com -


_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to