[sr-dev] massive SQL load and one subscriber only with presence 3.3

Jasmin Schnatterbeck js at data-cmr.net
Thu Mar 14 16:27:20 CET 2013


Hi,

in kamailio 3.3 the presence DB mode parameters "subs_db_mode", 
"publ_cache" and "notifier_processes" control how the module stores 
presentity and watcher info in DB.

If they have been set to the following values:
subs_db_mode=3
publ_cache=0
notifier_processes=3
the following query is executed >10 times/second (mysql log):

"select presentity_uri,callid,to_tag,from_tag,event from 
kamailio_active_watchers where updated=123 AND event<>'presence.winfo'"

According to the notifier_poll_rate default value (==10) and the formula 
in the documentation
  1/(waitn_time * notifier_poll_rate * notifier_processes)
That results in 1/(5*10*3) == 1/150

So is it really regular behaviour, if the query is performed that often?
What about using triggers in that situation?

Additionally I have noticed, that only one subscriber gets notified, if 
a presentity changes although all subcribers have been stored correctly 
in active_watchers.

When I set notifier_processes to 0 (old behaviour) every subscriber gets 
notified correctly...

Cheers
Jasmin



More information about the sr-dev mailing list