[OpenSER-Devel] [ openser-Bugs-1960100 ] Registrar's use of 'lookup' modifies DB storage

SourceForge.net noreply at sourceforge.net
Thu May 8 10:55:47 CEST 2008


Bugs item #1960100, was opened at 2008-05-08 10:55
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1960100&group_id=139143

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: ver 1.2.x
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: axlh (axlh)
Assigned to: Nobody/Anonymous (nobody)
Summary: Registrar's use of 'lookup' modifies DB storage

Initial Comment:
When a proxy has the 'lookup()' function (in DB mode) mentioned in the config file, it will start expiring the DB records. This results in either:

1) Lots of error messages as the DB account used by the proxy may have only read-only access (the registrar has rw access)

or
 
2) Race conditions between registrar and proxy. The current expiration and registration code is absolutely non-atomic and very race-prone. If the proxy is deleting location entries from the DB, the registrar will fail with registrations from the same user. (Because the registrar does not check if the contact is still in the DB, but that's a separate bug.)

Suggested fix:

Only do expiration when instructed to by a module-parameter (preferred) or when the 'save()' function is used.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1960100&group_id=139143



More information about the Devel mailing list