This is by design. When you have many thousands of presence
subscriptions you need to service them evenly across time instead of in
big lumps.
If you don't want this behaviour then you can set the notifier_processes
modparam to 0. But, if you do this you should consider not using
subs_db_mode 3 as there are many race-hazards in presence that are fixed
by using the notifier_processes.
Regards,
Peter
On Fri, 2012-11-09 at 12:01 +0100, Andrew Pogrebennyk wrote:
Hi,
when presence module is running with subs_db_mode=3 it makes an
excessive number of SQL select queries, litelly dozens per second:
25232 Query select
presentity_uri,callid,to_tag,from_tag,event from active_watchers where updated=64 AND
event<>'presence.winfo'
25233 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=116 AND event<>'presence.winfo'
25233 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=116 AND event='presence.winfo'
25232 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=64 AND event='presence.winfo'
25231 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=14 AND event<>'presence.winfo'
25231 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=14 AND event='presence.winfo'
25233 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=118 AND event<>'presence.winfo'
25232 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=66 AND event<>'presence.winfo'
25233 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=118 AND event='presence.winfo'
25232 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=66 AND event='presence.winfo'
25231 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=16 AND event<>'presence.winfo'
25231 Query select presentity_uri,callid,to_tag,from_tag,event from active_watchers
where updated=16 AND event='presence.winfo'
Steps to reproduce: registers two subscribers in jitsi and add them to
contact lists of each other.
The kamailio version is 3.3.2. I'm not doing anything special
configuration-wise:
loadmodule "presence.so"
modparam("presence", "db_url",
"mysql://kamailio:snbF93@localhost/kamailio")
# in 3.3 the fallback2db change to subs_db_mode
modparam("presence", "subs_db_mode", 3)
modparam("presence", "notifier_processes", 3)
loadmodule "presence_xml.so"
modparam("presence_xml", "db_url",
"mysql://kamailio:snbF93@localhost/kamailio")
modparam("presence_xml", "force_active", 0)
modparam("presence_xml", "integrated_xcap_server", 1)
# retry-after 5 minutes
modparam("presence_xml", "xcapauth_userdel_reason",
"probation;retry-after=300")
Q: it is a bug of a feature? :)
Thanks.
Andrew
_______________________________________________
sr-dev mailing list
sr-dev(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev