Rodrigo,

I believe if you create partitions for your nathelper call backs see:

http://www.opensips.org/html/docs/modules/2.1.x/nathelper.html#id293468

You will not have this issue any more. The nathelper callback is taking a long time to ping all the nat'd contacts most likely, so it doesnt finish its job before its time to run again. If you break up the pinging into multiple partitions it will go faster, and prevent the overlap from happening.

-Eric

On 02/23/2016 02:22 PM, Eric Tamme wrote:
Hey again Rodrigo,

I had further discussions with Bogdan which I will summarize here in an attempt to clarify.

Because the new 2.x system is implemented as a reactor, the implementation of timer based callbacks has changed. There is a single timer process who's only job is to keep track of jobs that are to be scheduled, when it decides a job/callback needs to happen because of the current time, it writes to a shared pipe which is read by ALL other processes of the reactor. Any reactor process that is free, will take this callback off the pipe and run it. In this way, there is no way to actually block the timer process.

However, what can happen, and what I believe you are seeing here is that the timer process has not finished going through the list of timer handlers and it should have started processing the list again already - so the timer list scan is overlapping.

I'm not 100% sure how this can happen, perhaps you have a very long timer list and it is causing the timer process to fail to complete before its next scheduled iteration - either than or it is not able to write to the shared pipe for some reason.

I would bring the question to either IRC, or to the devel list with as much detail as possible.

-Eric


On 02/23/2016 01:59 PM, Rodrigo Pimenta Carvalho wrote:

Ok Eric.


Thank you very much.

I will analyze my OpenSIPS configuration and try to discover what action is causing the block situation.


Best regards.


RODRIGO PIMENTA CARVALHO
Inatel Competence Center
Software
Ph: +55 35 3471 9200 RAMAL 979


------------------------------------------------------------------------
*De:* users-boun...@lists.opensips.org <users-boun...@lists.opensips.org> em nome de Eric Tamme <e...@uphreak.com>
*Enviado:* terça-feira, 23 de fevereiro de 2016 17:51
*Para:* OpenSIPS users mailling list
*Assunto:* Re: [OpenSIPS-Users] What does exactally mean lots of warnings about timer_ticker in the log (OpenSIPS 2.1)?
I was just speaking with bogdan, apparently i am wrong.  he said:

"no, there is no way to do that, as right now any process (SIP worker) can execute (if free) the timer jobs, and the timer_partitions in TM has nothing to do with that change (in how timer jobs are executed)"

So ... i guess you need to prevent any type of blocking operations ...

-Eric

On 02/23/2016 01:34 PM, Rodrigo Pimenta Carvalho wrote:

Ok Eric.

Thank you. I will try  this and see what will be the result.

Thanks a lot.


RODRIGO PIMENTA CARVALHO
Inatel Competence Center
Software
Ph: +55 35 3471 9200 RAMAL 979


------------------------------------------------------------------------
*De:* users-boun...@lists.opensips.org <users-boun...@lists.opensips.org> em nome de Eric Tamme <e...@uphreak.com>
*Enviado:* terça-feira, 23 de fevereiro de 2016 17:23
*Para:* OpenSIPS users mailling list
*Assunto:* Re: [OpenSIPS-Users] What does exactally mean lots of warnings about timer_ticker in the log (OpenSIPS 2.1)? I believe this has been refactored under 2.X as a result ofthe async work. I think the new settings are "timer partitions" here is the tm documentation discussing the timer partition setting: http://www.opensips.org/html/docs/modules/2.1.x/tm.html#id294483 tm Module - OpenSIPS <http://www.opensips.org/html/docs/modules/2.1.x/tm.html#id294483>
www.opensips.org
TM module enables stateful processing of SIP transactions. The main use of stateful logic, which is costly in terms of memory and CPU, is some services inherently ...



-Eric

On 02/23/2016 12:57 PM, Rodrigo Pimenta Carvalho wrote:

Hi Eric Tamme.


I have just searched about Timer in the module docs, but I didn't find any thing about how to manager Timers in OpenSIPS, as you commented.

Do you know what part of the documentation tells about "dedicated timer processes"?


BTW, my project is embedded.


Any hint will be very helpful!


Thanks a lot!


RODRIGO PIMENTA CARVALHO
Inatel Competence Center
Software
Ph: +55 35 3471 9200 RAMAL 979


------------------------------------------------------------------------
*De:* users-boun...@lists.opensips.org <users-boun...@lists.opensips.org> em nome de Eric Tamme <e...@uphreak.com>
*Enviado:* segunda-feira, 22 de fevereiro de 2016 14:35
*Para:* OpenSIPS users mailling list
*Assunto:* Re: [OpenSIPS-Users] What does exactally mean lots of warnings about timer_ticker in the log (OpenSIPS 2.1)? Many things share the same timer, dialog expiration cleanup, userlocation cleanup, nathelper pings etc. If one of the processes that is triggered by a timer route blocks for some period of time - aka a hung db query, it will cause the timer to "drift" and you will get logs indicating that a process that should have takeng X amount of time actually took Y amount of time - this is due to the blocking operation.

I would suggest that you use dedicated timer processes for as many things as you can - dialog, tm etc. see the module docs for how to do this.

-Eric

On 02/22/2016 10:28 AM, Rodrigo Pimenta Carvalho wrote:


Hi.

The log of my OpenSIPS began to present thousands of warnings similar to:



"WARNING:core:timer_ticker: timer task <nh-timer> already schedualed for 93991120 ms (now 248157560 ms), it may ove rlap.."


What does exactly means it?

Some discussions from the past said something about increasing the number in the global variable "children".


Should I change the number for children? Before trying it i would like to hear something about, just to know better what I'm going to do.


Any hint will be very helpful!


Thanks a lot.



RODRIGO PIMENTA CARVALHO
Inatel Competence Center
Software
Ph: +55 35 3471 9200 RAMAL 979


_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to