Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 0 Dołączył: 5.01.2006 Skąd: Kraków Ostrzeżenie: (10%)
|
Witam.
Potrzebuję kilka przykładów jak wywołać taki błąd w mysql?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Pilne. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 23.05.2005 Ostrzeżenie: (0%)
|
Aaaa no glupi jestem. Wiem co to zakleszczenie ale jakos w kontekscie mysql mi sie zapomnialo (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Podany przyklad przez ~mike_mecha jest ok, z tym, ze w normalnych skryptach "dobrze" zaprojektowanych dla kazdego BEGIN masz ROLLBACK lub COMMIT. I teraz sprawa jest taka, ze nie gwarantuje to, ze taki deadlock nie wystapi. Klasyczny deadlock wystapi, jesli proces A zalozyh blokade na zasob ZA, proces B zalozy blokade na zasob ZB i teraz proces A probuje zalozyc blokade na zasob ZB (ale musi poczekac, az proces B ja sciagnie), zas proces B chce zalozyc blokade na zasob ZA (ale musi poczekac, az proces A ja sciagnie). I wtedy powstanie takie zakleszczenie.
Probowalem przed chwila ulepszyc przyklad podany przez ~mike_mecha w ten spsob, ze wlaczylem sobie 2 konsole. Na obu z nich rozpoczalem transakcje (BEGIN;), potem na konsoli A zrobilem update tabeli X, zas na konsoli B update tabeli Y. Pozniej chcialem zamienic update'y (na konsoli A update tabeli Y, na konsoli B update tabeli X) i o dziwo dostalem komunikat: Cytat update AKTUALNY_SEZON set ID_SEZONU=1 where ID_SEZONU=1; ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction Nie wiem wiec, czy mozna taki deadlock wywolac w mysql, czy zabezpieczyli sie przed tym sprawdzajac taki graf procesow i zasobow. Ten post edytował Radarek 20.01.2006, 19:50:41 |
|
|
|
espeen Deadlock 19.01.2006, 21:31:34
DeyV słyszałem o sytuacjach, w ktorych komuś zależało, ... 19.01.2006, 22:54:12
DeyV Po subtelnej i grzecznej (hihihi) prośbie o otwarc... 20.01.2006, 12:27:41
espeen Niezmiernie mi miło że temat został odblokowany. W... 20.01.2006, 13:36:36
Radarek Hm, a w jakich okolicznosciach taki blad moze sie ... 20.01.2006, 14:33:02
mike_mech Działasz na dwóch konsolach:
Konsola 1
Cytat> ... 20.01.2006, 15:12:15
SongoQ @mike_mech Twoj przyklad jest sprawdzony, bo wydaj... 20.01.2006, 19:24:13
espeen Spoko.
Fajne przykłady oto mi mniej wiecej chodzi... 21.01.2006, 17:03:20 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 06:40 |