Stránka 1 z 1

Transakce - nejasnosti

Napsal: 14. 6. 2009 20:08
od HonzaK
Ahoj,
v prubehu uceni se na zkousku jsem narazil na dva problemy, na ktere se mi zkoumanim fora nepodarilo najit jednoznacnou odpoved,
neb mam takove podezreni, ze se v odpovedich na ne ruzni i sam doc. Skopal a nekteri cvicici :roll: Konkretne se jedna o tyto:

1) Kdyz delam precedenci graf pro dany rozvrh, mam do nej zahrnovat i abortujici transakce ? Podle slajdu z prednasky ne (tam se tvrdi, ze vrcholy grafu jsou POTVRZENE transakce),
ale tady na foru jsem v nekterych vlaknech z minulych let cetl, ze doc. Skopal lidem rikal, ze tam maji zahrnout i ty... Bylo by to celkem jedno, kdybych si byl jist, ze pridanim i
abortujicich transakci do grafu mi tam nevznikne cyklus (pokud tam jiz nebyl), ale treba zrovna u reseni prikladu ze zadani B ze dne 26.5.2009 mi tam jednou cyklus vznikne a
jendou ne.... :o Zde je obrazek tech dvou grafu (T3 jedina abortuje):
Obrázek

Jak ste to teda delali/budete delat na zkousce vy a jak to bylo hodnoceno ?

2) Druha otazka se tyka zotavitelnosti rozvrhu - opet tady na foru jsem videl nekolikrat se opakujici tvrzeni, ze rozvrh, kde vsechny transakce commituji, je vzdy zotavitelny.
Ale napr. v materialech ke cviceni Mgr. Necaskeho se zotavitelnost posuzuje i u rozvrhu, kde vsechny tri transakce commituji a rozvrh je, dle definice zotavitelnosti, ktera je v tom textu uvedena, posouzen jako nezotavitelny.... Jak je to tedy spravne ? (jedna se o tento text, priklad 12: http://www.ksi.mff.cuni.cz/~necasky/mat ... nsakce.pdf)

Diky moc za vsechny reakce, at vim (a vsichni dalsi), jak se na zkousce zachovat.... :)

Re: Transakce - nejasnosti

Napsal: 14. 6. 2009 20:22
od Osiris
HonzaK píše:...
Zdravím, já jsem absolvoval jak předmět Databázové systémy, tak Transakce a tam to bylo dáno takto:

1) V transakčních historiích se zaznámenávaly i abortované transakce, avšak při testování konfliktové ekvivalence se bere v úvahu pouze jejich commitovaná projekce - pouze commitované transakce se berou v úvahu. Z toho plyne, že pouze precedenční graf COMMITOVANÉ projekce je acyklický (při korektním 2fázovém zamykání). Abortované transakce se abortují (mimo jiné) proto, že tvoří cyklus v precedenčním grafu (resp. tvořily by po commitu).

2) V předmětu Transakce (viz. http://dsrg.mff.cuni.cz/~ceres/sch/txy/ ... rrency.pdf) se to definovalo takto: Historie je zotavitelná, pokud se transakce T commituje až tehdy, když všechny transakce, které zapsaly data která T četla, se commitovaly. Takže určitě neplatí, že pokud se všechny transakce commitují, tak je rozvrh zotavitelný. Viz příklad z těch textů:

Kód: Vybrat vše

w1[x] r2[x] w2[y] c2 c1
Je jasně nezotavitelná z důvodu, že 2 se commituje dříve, než jednička.

Re: Transakce - nejasnosti

Napsal: 15. 6. 2009 14:32
od HonzaK
Diky moc za odpoved, rikal jsem si, z eby to melo asi byt takhle...

Otazka ale je, jak se zachovat, pokud budu psat oddeleni, ktere bude opravovat Skopal...?? :lol:
viz treba: http://forum.matfyz.info/viewtopic.php?f=238&t=3214

Re: Transakce - nejasnosti

Napsal: 15. 6. 2009 20:48
od Him
HonzaK: Vajbar za nezahrnutí abortované transakce do precedenčního grafu strhl jednomu klukovi deset bodů.