My task is available here: https://github.com/ilvalle/scapp/blob/master/models/scheduler.py As you can see the difference is related to the external request. Asap I will try your app too.
Paolo 2013/3/25 Niphlod <[email protected]> > can't reproduce the issue, even with SQLite. > Using the demo1() function from the w2p_scheduler_test app, if I schedule > it with period=300, repeats = 0, this is what I get back > > r1: 2013-03-25 21:32:56 > r2: 2013-03-25 21:38:12 -- 316s > r3: 2013-03-25 21:43:28 -- 316s > r4: 2013-03-25 21:48:31 -- 303s > r5: 2013-03-25 21:53:36 -- 305s > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Monday, March 25, 2013 8:57:09 PM UTC+1, Paolo valleri wrote: > >> Hi, given the fact that I left untouched the heartbeats value and that my >> worker was performing only the test task, I got odd starting values: >> t1: 2013-03-25 15:34:43 >> t2: 2013-03-25 15:40:48 ( t2 started after 6m + 5s = 365seconds ) >> t3: 2013-03-25 15:46:52 ( t3 started after 6m + 4s = 364seconds ) >> t4: 2013-03-25 15:52:08 ( t4 started after 5m +16s = 316seconds ) >> t5: 2013-03-25 15:57:22 ( t5 started after 5m +14s = 314seconds ) >> >> Given these starting values, it seems that only the last one is under >> 315. I think we should investigate more how scheduler runs repetitive >> tasks. >> >> >> >> Paolo >> >> >> 2013/3/25 Niphlod <[email protected]> >> >>> The scheduler is not as "precise" as you would because there are some >>> design considerations to think of.... >>> >>> The "uber-costraint" is that a worker can execute only one task at a >>> time --> if the scheduler is busy with something else, queued tasks can be >>> "delayed" down the line >>> If the worker is free, new tasks are checked every 5*heartbeats seconds, >>> so (unless immediate=True) you can get a timeframe for execution that spans >>> in the worst case scenario with the default values by 15 seconds >>> >>> This means that in the worst case scenario you could have a repeating >>> task with a 300 seconds period that are actually executed every 315 seconds. >>> >>> To clear out doubts, for repetitive tasks, as documented in more detail >>> in the w2p_scheduler_tests app, the start time of the next execution is >>> calculated adding period seconds after the start time of the current >>> execution. >>> Lockings on the db can add more "imprecision", cause by the default the >>> scheduler is eager to store/update whatever it needs to, to ensure >>> consinstency between the real executions and the data stored on the tables. >>> >>> >>> On Monday, March 25, 2013 4:23:56 PM UTC+1, Paolo valleri wrote: >>>> >>>> Dear all, >>>> I started to use scheduler. I've created a simple starting example >>>> task: https://github.com/ilvalle/**sca**pp/blob/master/models/** >>>> schedule**r.py<https://github.com/ilvalle/scapp/blob/master/models/scheduler.py> >>>> and with the great niphlod's plugin cs_monitor_plugin I created an >>>> initial repetitive task. >>>> However, although I set repeats: 0 and period: 300, tasks are not >>>> repeated as expected exactly every 300s. The first five tasks were executed >>>> at: >>>> 2013-03-25 15:34:43 >>>> 2013-03-25 15:40:48 >>>> 2013-03-25 15:46:52 >>>> 2013-03-25 15:52:08 >>>> 2013-03-25 15:57:22 >>>> The time between two consecutive execution is not so straightforward. >>>> what am I missing? Is there a way to impose more accuracy ? >>>> >>>> paolo >>>> >>> -- >>> >>> --- >>> You received this message because you are subscribed to a topic in the >>> Google Groups "web2py-users" group. >>> To unsubscribe from this topic, visit https://groups.google.com/d/** >>> topic/web2py/u_PgzKLuQmw/**unsubscribe?hl=en<https://groups.google.com/d/topic/web2py/u_PgzKLuQmw/unsubscribe?hl=en> >>> . >>> To unsubscribe from this group and all its topics, send an email to >>> web2py+un...@**googlegroups.com. >>> >>> For more options, visit >>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>> . >>> >>> >>> >> >> -- > > --- > You received this message because you are subscribed to a topic in the > Google Groups "web2py-users" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/web2py/u_PgzKLuQmw/unsubscribe?hl=en. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.

