Hi Henning, hi all, this is odd. The timer is inserted from set_timer (modules/tm/timer.c) like this:
insert_timer_unsafe( list, new_tl, timeout + ((timer_id2type[list_id]==UTIME_TYPE)?get_uticks():get_ticks())); get_ticks() / get_uticks() from "../../timer.h" is called (both in 1.3 branch and in trunk). From that point of view, i think the "1841815" value makes sense, since the server has been running for quite a while. Or am i wrong here? The curious thing here is, that the value of "1841815" is not created from my module-code, but from the TM-API (t_request). The "t_request"-call is created from a separate timer-process created by my module (register_timer_process()); the timer triggered here is from the "regular" timer-process (register_timer()). Could this lead into trouble? Thanks for your help, Carsten -------- Weitergeleitete Nachricht -------- Von: Henning Westerholt <[EMAIL PROTECTED]> An: devel@lists.openser.org Kopie: Carsten Bock <[EMAIL PROTECTED]> Betreff: Re: [OpenSER-Devel] TM: API: t_request: Timeouts too short?!? Datum: Wed, 11 Jun 2008 17:42:51 +0200 On Wednesday 11 June 2008, Carsten Bock wrote: > [..] > And according to the logs and to the source, this does happen correctly > (if i understand the TM-Timers correctly): Hi Carsten, > This is the debug-output when i execute t_request: > [..] > Jun 10 17:45:55 SIP01 /usr/sbin/openser[31731]: DBG:tm:set_timer: > relative timeout is 500000 > Jun 10 17:45:55 SIP01 /usr/sbin/openser[31731]: > DBG:tm:insert_timer_unsafe: [4]: 0x77db3c3c (500000) > Jun 10 17:45:55 SIP01 /usr/sbin/openser[31731]: DBG:tm:set_timer: > relative timeout is 15 > Jun 10 17:45:55 SIP01 /usr/sbin/openser[31731]: > DBG:tm:insert_timer_unsafe: [0]: 0x77db3c58 (1841815) ^^^^^^^ this looks strange. On trunk (for the normal tm timer) i get this: Jun 11 17:21:46 ca ../openser[777]: DBG:tm:set_timer: relative timeout is 500000 Jun 11 17:21:46 ca ../openser[777]: DBG:tm:insert_timer_unsafe: [4]: 0xb5c6c42c (500000) Jun 11 17:21:46 ca ../openser[777]: DBG:tm:set_timer: relative timeout is 15 Jun 11 17:21:46 ca ../openser[777]: DBG:tm:insert_timer_unsafe: [0]: 0xb5c6c448 (15) ^^ > [..] > and then the "normal" timer: > > Jun 10 17:45:56 SIP01 /usr/sbin/openser[31730]: DBG:tm:timer_routine: > timer routine:0,tl=0x77db5740 next=0x77db3c58, timeout=1841815 > Jun 10 17:45:56 SIP01 /usr/sbin/openser[31730]: DBG:tm:timer_routine: > timer routine:0,tl=0x77db3c58 next=(nil), timeout=1841815 ^^^^^^^ > Jun 10 17:45:56 SIP01 /usr/sbin/openser[31730]: > DBG:tm:final_response_handler: stop retr. and send CANCEL (0x77db3af0) > Jun 10 17:45:56 SIP01 /usr/sbin/openser[31730]: > DBG:tm:t_should_relay_response: T_code=0, new_code=408 > Jun 10 17:45:56 SIP01 /usr/sbin/openser[31730]: DBG:tm:t_pick_branch: > picked branch 0, code 408 Jun 11 17:21:57 ca ../openser[785]: DBG:tm:insert_timer_unsafe: [7]: 0xb5c6c42c (15500000) Jun 11 17:21:57 ca ../openser[785]: DBG:tm:retransmission_handler: retransmission_handler : done Jun 11 17:22:01 ca ../openser[785]: DBG:tm:timer_routine: timer routine:0,tl=0xb5c6c448 next=(nil), timeout=15 ^^ Jun 11 17:22:01 ca ../openser[785]: DBG:tm:final_response_handler: stop retr. and send CANCEL (0xb5c6c2e0) Jun 11 17:22:01 ca ../openser[785]: DBG:tm:t_should_relay_response: T_code=100, new_code=408 Jun 11 17:22:01 ca ../openser[785]: DBG:tm:t_pick_branch: picked branch 0, code 408 It seems that the timer is created with value around 1.8 seconds from your module code, and the core handle accordingly. Cheers, Henning _______________________________________________ Devel mailing list Devel@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/devel