so:transakcja_def [mgr Wiki]

[[so:transakcja_def]]
mgr Wiki

## Definicja transakcji cd.

Transakcja jest fragmentem programu, w którym dokonuje się dostępu do rozmaitych obiektów danych przechowywanych w różnych plikach na dysku. Z naszego punktu widzenia transakcja jest po prostu ciągiem operacji czytania (ang. read) i pisania (ang. write), zakończonym operacją zatwierdzenia (ang. commit) lub zaniechania (ang. abort). Operacja zatwierdzenia oznacza, że transakcja zakończyła się pomyślnie, natomiast operacja zaniechania oznacza, że wykonanie transakcji nie dobiegło do końca z powodu jakiegoś błędu logicznego. Pomyślnie zakończona transakcja nazywa się zatwierdzoną (ang. committed); w przeciwnym razie mówimy, że transakcja została zaniechana (ang. aborted). Skutków transakcji zatwierdzonej nie można cofnąć przez zaniechanie transakcji.

Transakcja może również nie dobiec do końca z powodu awarii systemu. W każdym przypadku stan danych dostępnych w transakcji może nie być wówczas taki jak po niepodzielnym jej wykonaniu, ponieważ zaniechana transakcja mogła już zdążyć pozmieniać niektóre dane. Zapewnienie niepodzielności transakcji wymaga, aby transakcja zaniechana nie pozostawiała śladów w danych, które zdążyła już zmienić. Należy wobec tego dane zmienione przez zaniechaną transakcję odtworzyć do stanu, jaki miały bezpośrednio przed rozpoczęciem wykonywania transakcji. Mówimy o takiej transakcji, że została wycofana (ang. rolled back). Jednym z obowiązków systemu jest zapewnianie tej właściwości.

so/transakcja_def.txt · Last modified: 2006/05/18 00:41 by 213.134.172.237