soubezne provadeni trigger-funkci
Karel Zak
zakkr na zf.jcu.cz
Pátek Listopad 8 10:22:37 CET 2002
On Thu, Nov 07, 2002 at 02:21:36PM +0100, Jan Kubik wrote:
> jak je v postgresql(a event. v oracle, db2) reseno vzajemne blokovani
> trigger-funkci?. Nebo jinak receno, je provadena v jednom okamziku
> pouze jedna trigger-funkce a ostatni jsou suspendovany databazi a nejaka
> dalsi se rozbehne teprve tehdy, kdyz je ta predchozi uplne ukoncena.
Celkem necekane DB pracuje s daty a zajistuje jejich konzistenci :-)
to znamena, DB pohlizi na trigger jako na soucast transakce.
> ze databaze necha bezet vice triggeru soucasne a konkurujici pristupy
> resi sama pres zamky a transakce, vylicim hned muj problem.
Ano. DB server neni aplikacni server.
> Vice databazovych procesu meni v rade tabulek a pri kazdem
> delete, insert, update je volana jedna a ta sama procedura.
> V teto procedure by se nachazel C-cod, ktery by spravoval jeden
> centralni soubor, do ktereho by se zaznamenavaly krome jinych
> udaju i zmeny v databazi.
Soubor?! To je jako vzit BMW a namontovat mu jedno kolo z Trabanta.
Co treba tabulku v ramci te DB?
> Databazove procesy pouzivaji tento centralni soubor tez jako
> podporu ke cteni z databaze.
Nechapu.
> V pripade, ze by bylo provadeni trigger-funkci atomicke ze strany
> databaze, musel bych uz jen hlidat konzistentni cteni - t.zn. patrne
> pouze jeden semaphore.
Atomicka je transakce.
> Dodatecna otazka - semaphore a podobne skopiciny - jde to v tech procedurach
> vubec?
Vsechno jde, ale zrovna IPC je v PostgreSQL celkem dost pouzivana vec
takze asi bude nutne vedet co delate.
Reknete proc to chcete a mozna se podari najit nejake systemovejsi
reseni.
Karel
--
Karel Zak <zakkr na zf.jcu.cz>
http://home.zf.jcu.cz/~zakkr/
C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz
Další informace o konferenci Databases