hc-cron i vixie-cron

Marcin Kaminski maxiu w best.net.pl
Pon, 30 Maj 2005, 16:14:47 CEST


On Monday 30 May 2005 15:49, Robert 'dzeus' Graużenis wrote:
> On Mon, May 30, 2005 at 03:03:26PM +0200, Marcin Kaminski wrote:
> > Witam
> > Zgłaszałem buga dotyczącego hc-crona
> > (http://bugs.pld-linux.org/index.php?do=details&id=5647). Dotyczy on
> > także vixie-cron i pewnie innych cronów jeśli zbudowane zostały na bazie
> > vixie-crona.
> > Skontaktowałem się już z autorem hc-crona, obiecał wypuścić poprawkę.
> > Wątpię żeby Paul Vixie mi odpisał apropo vixie-crona, w końcu ten soft
> > zakończył rozwój 10 lat temu.
> > Ogólnie patche na ten błąd są trywialne, oba w załączniku. Wystarczy je
> > dołożyć na końcu listy patchy w specu.
>
> Zauważyłem to kiedyś w hc-crona, zamieniłem na vixie i od pół roku nie
> wykonał nic podwójnie, uruchamiam zadania nie częsciej niż raz na
> minutę.

W cronie częściej się chyba nie da :)
Natchnąłeś mnie do testów vixie i faktycznie, cofam co napisałem wcześniej. 
Vixie zawiera 'workaround' tego problemu i podwójne wykonywanie zadań nie 
występuje. Chodzi o to że vixie nie oblicza kolejnego 'ticku' na podstawie 
aktualnego czasu, tylko stale dodaje 60s do TargetTime. hc-cron za każdym 
razem wykonuje 'synchronizację' czasu, przez co może pobrać zbyt wczesny 
czas. Dzięki tej synchronziacji hc-cron odpowiednio będzie działał np. po 
powrocie z hibernacji, albo po zmianie czasu (vixie niekoniecznie).
Mimo wszystko zostawiłbym patcha także w vixie, gdyż poprawia on 'dokładność' 
czasu startu zadań, wcześniej mogły one się wywoływać za wcześnie, na 
szczęście bez powtórzeń.
Log z vixie z zadaniem usleep 550000:
*system* (05/29-16:00:00-1223) RELOAD (/etc/cron.d/kmod)
root (05/29-16:00:00-1876) CMD (/sbin/rmmod -as)
maxiu (05/29-16:00:00-1878) CMD (usleep 550000)
maxiu (05/29-16:00:59-1881) CMD (usleep 550000)
root (05/29-16:00:59-1884) CMD (/bin/run-parts /etc/cron.hourly)
maxiu (05/29-16:02:01-1889) CMD (usleep 550000)
maxiu (05/29-16:03:00-1892) CMD (usleep 550000)
maxiu (05/29-16:03:59-1895) CMD (usleep 550000)
maxiu (05/29-16:05:00-1898) CMD (usleep 550000)
maxiu (05/29-16:05:59-1901) CMD (usleep 550000)
maxiu (05/29-16:07:00-1904) CMD (usleep 550000)

Pozdrawiam

PS. W związku z tym muszę się przyjrzeć jak faktycznie vixie działa przy 
zmianie czasu.

-- 
- Marcin Kaminski --------------------------------- maxiu -
--- software developer ------------------- 6net project ---
----- network administrator -------- Best Group admin -----
------- Poznan Supercomputing and Networking Center -------



Więcej informacji o liście dyskusyjnej pld-devel-pl