Hi Alex,

I'm not sure I understand your comment entirely, you say this patch might
cause us to take too long to respond to a DLR/MO, which I understand, BUT
this scenario is already possible if there are no other events calling the
thread to wake up?

Thanks,
Donald

2009/2/10 Alexander Malysh <[email protected]>

> Hi,
>
> yes, your patch seems to fix gwthread_wakeup but it's wrong too because we
> _may_ not sleep on transceiver bind because we could take too long to
> respond to dlr/mo. I have patch here for throttling, will try to rebase
> it...
>
> Thanks,
> Alex
>
> Donald Jackson schrieb:
>
>  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
>>
>
>
>


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

Reply via email to