[OpenSIPS-Devel] [ opensips-Patches-3028765 ] timers: core and tm

SourceForge.net noreply at sourceforge.net
Tue Jul 13 06:12:04 CEST 2010


Patches item #3028765, was opened at 2010-07-12 21:12
Message generated for change (Tracker Item Submitted) made by kennardwhite
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=1086412&aid=3028765&group_id=232389

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: core
Group: trunk
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Kennard White (kennardwhite)
Assigned to: Nobody/Anonymous (nobody)
Summary: timers: core and tm

Initial Comment:
What
----
This patch allows the tm module to have a dedicated process for
running its timers to handle retransmission, cleanup and timeouts.
The patch consists of:
   * Minor changes to core timer.c and timer.h to allow creation of
     additonal timer tasks.
   * Addition of tm module parameter "own_timer_proc". If set 1, tm
     module will setup timers within its own process.

Why
---
Under heavy load, the presence cleanup routes and
the register cleanup routines can take several minutes each. During
this time, the tm timers, and in particular the retransmission timers
don't run. Given that the first retransmisssion timer is 0.5sec, even
very small delays caused by the cleanup routines can kill the retransmissions.
This patch "fixes" this by allowing a dedicated timer process for tm.

Concerns
--------
When enabled, the module's init_child function will be called more than once
with rank "PROC_TIMER" (because there will be two such processes). Any
module that uses the rank as an index and assumes uniqueness will be
confused. If this is problem, please suggest better solution and I'll
re-code.

I went down a few deadends while doing this, and there may be more
incidental changes (e.g., whitespace) than required. Sorry.


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

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=1086412&aid=3028765&group_id=232389



More information about the Devel mailing list