Marian Cerny napsal/wrote, On 09/26/07 06:51:
>> Takze konecne moje otazka na vas. Proc pri startu pdns se nemuze pdns
>> dostat do mysql s chybou 49

> A ten sleep na konci rc.d/mysql-server skriptu pomoze? To by bolo prve,
> co by som skusil.

        Na zkousku urcite dobry (melo-li by to byt trvale reseni tak nejcistsi 
je pridat ten slep jako start_postcmd rutinu), ale pokud je pdns 
neschopno vzpamatovat se z nedostupnosti databaze a "zdechne" tak je 
skoro lepsi najit (pro nej) nejaky jiny spousteci mechanismus nez rc.d - 
takovy, ktery jej bude udrzovat spusteny. To problem vyresi nejen pri 
startu (prote se nastaruje na ponekolikate, ale nakonec pojede) ale i 
tehdy, kdyz za behu bude MySQL z jakehokoliv duvodu nedostupne (abend, 
regulerni restart a pod.)

        Pokud to jde tak bych ho nechal spoustet z /etc/ttys.

        Pokud to nejde (a ne vzdy to jde) tak alternativni moznosti jsou - 
periodicke spousteni startovaciho scroptu z crontabu, nebo pouziti 
nektereho "hlidaciho psa", ktere jsou v portech.

  ----------

        Tohle cele je soucasti vetsiho problemu, ktery zatim neni moc vyresen. 
rc_subr system celkove trpi tim, ze pri provadeni vice operaci vydava 
asynchronni pokyny, ale chova se, jako by operace provadel synchronne. 
Nasledkem jsou prave selhani vlivem toho, ze rc_subr sy nespravne mysli, 
ze nejaka zavislost je jiz naplnena a tak pristoupi k dalsim krokum, 
jenze ona naplnena neni. Nebo si mysli, ze je nejaky proces zastaveny - 
ale on neni.

        Jen z me znamych skutecne se objevujicich nasledku:
* starty post-MySQL scriptu (MySQL formalne bezi, skutecne nikoliv)
* starty post-NETWORKING scriptu (sit je k dispozici formalne, ve 
skutecnosti ale jeste nikoliv)

        Donedavna byly jeste problemy i s restarty (MySQL, named) kdyz 
'restart' zavolal tesne po sobe 'stop' a 'start', ted uz 'stop' obsahuje 
  test na to, ze proces $pid zmizel. Sice to jeste nefunguje dobre - 
test je ekvivalentem volani interniho 'poll', takze pokud tato metoda 
pro dany server nefunguje a ma nadefinvanou vlastni 'poll' rutinu tak ta 
se nepouzije a cele to v takovem pripade nefunguje dobre.

        Neco podobneho 'poll' by potreboval i 'start' - urcite neni moc dobre, 
ze 'stop' je synchronni, kdezto 'start' asynchronni (a navazne operace 
neresi, ze takovy je) ...

                                        Dan


-- 
Dan Lukes                                               SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz, dan at (kolej.)mff.cuni.cz
-- 
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem