Hi everyone,

Here is a patch I have created for SMPP throttling. To easily
duplicate the bug you can take the following actions:

-- Configure SMPP bind with very low throughput (ie: 0.1)
-- Send 100 messages in quick succession

What you can see from the debug output times is that when
send_messages() is supposed to be sleeping for throttling purposes, it
will get woken up by send_msg_cb()'s
gwthread_wakeup(smpp->transmitter); call.

This causes inaccuracy in the sleep time as the thread is prematurely
woken up. This causes many throttling errors on high volume/load
Kannel installations because of the increased throttling errors and
the current default throttling sleep time which I see is being changed
;) My patch simply let's send_messages() indicate that it is sleeping
for throttling purposes and shouldn't be woken up.

Good luck!
--
Donald Jackson
http://www.ddj.co.za/
donaldjster(a)gmail.com

Attachment: smpp_throttle_fix.patch
Description: Binary data

Reply via email to