Module: sip-router Branch: master Commit: dff68160e4decc43f2da8948ea03bc4d469ded96 URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=dff68160...
Author: Peter Dunkley peter.dunkley@crocodile-rcs.com Committer: Peter Dunkley peter.dunkley@crocodile-rcs.com Date: Wed Apr 18 17:29:32 2012 +0100
modules_k/rls: RLS full-state NOTIFY requests now sent by notifier process(es)
- Also modified the notifier process stuff to only work when in DB only mode. This is because the full-state handling stuff in the notifier processes relies on DB only mode. - Leaving the full-state stuff outside of the notifier process didn't work because there was a row update race between the notifier process and non-notifier process when full-state and non- full-state NOTIFY requests were generated at the same time. - This ensures that (with default options) you get at most one NOTIFY (or set of NOTIFYs when splitting large NOTIFYs is enabled) per 5s per watcher from RLS. - It also helps spread out the NOTIFY generation load more evenly across time.
---
modules_k/rls/README | 6 ++ modules_k/rls/doc/rls_admin.xml | 8 ++ modules_k/rls/resource_notify.c | 175 +++++++++++++++++++++++++++++++++++++-- modules_k/rls/rls.c | 25 ++++-- modules_k/rls/rls.h | 3 + modules_k/rls/rls_db.c | 20 ++++- modules_k/rls/subscribe.c | 40 ++++++---- 7 files changed, 240 insertions(+), 37 deletions(-)
Diff: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=dff6...