Administrator transakcji MTS czasami staje przed konieczno£ci╣ rΩcznego przeprowadzenia transakcji dla pewnej aplikacji MTS. Do przeprowadzania transakcji s│u┐y okno Lista transakcji programu MTS Explorer. W oknie tym mo┐na wybraµ jedno z nastΩpuj╣cych polece±:
Czasami zachodzi konieczno£µ przekazania lub przerwania transakcji w celu zwolnienia blokad, a tym samym udostΩpnienia zasob≤w bazy danych innym aplikacjom i u┐ytkownikom sieci.
Sytuacja taka mo┐e wyst╣piµ na przyk│ad w wyniku przerwania linii komunikacyjnej miΩdzy dwoma komputerami w sieci. Po rΩcznym przekazaniu lub przerwaniu transakcji czΩsto nale┐y r≤wnie┐ wymusiµ "zapomnienie" transakcji, co oznacza jej usuniΩcie z lokalnego pliku dziennika us│ugi MS DTC.
Rozwa┐my przyk│ad rΩcznego przerwania transakcji. Za│≤┐my, ┐e spe│nione zosta│y nastΩpuj╣ce warunki:
Transakcja zosta│a przerwana w nastΩpuj╣cym stanie:
Poniewa┐ linia komunikacyjna miΩdzy komputerami A i B jest nadal nienaruszona, komputer B przekaza│ transakcjΩ. Niemniej jednak, obydwa komputery musz╣ zachowaµ w swoich plikach dziennik≤w rekordy COMMITTED, a┐ do momentu kiedy komputery C i D potwierdz╣, ┐e r≤wnie┐ przekaza│y transakcjΩ. Aby przeprowadziµ transakcjΩ (a tym samym zwolniµ blokady baz danych na│o┐one na komputery C i D), administrator systemu wymusza przekazanie transakcji przez komputer C (zobacz nastΩpny rysunek).
Poniewa┐ linia komunikacyjna miΩdzy komputerami A i B jest nadal nienaruszona, przekazanie transakcji wymuszone na komputerze C pozwala przekazaµ transakcjΩ komputerowi D. Na komputerze D mo┐e zostaµ zwolniona blokada bazy danych, a transakcja mo┐e zostaµ zapomniana. Kiedy komputer D wy£le do komputera C potwierdzenie o przekazaniu i zapomnieniu transakcji, na komputerze C r≤wnie┐ bΩdzie mo┐na zwolniµ blokady bazy danych i zapomnieµ transakcjΩ.
TransakcjΩ przekazano do wszystkich komputer≤w. Tym niemniej, poniewa┐ komputer C nie mo┐e poinformowaµ o przekazaniu relacji komputera B, komputer B nadal musi pamiΩtaµ transakcjΩ. Poniewa┐ na komputerze B transakcja nie zosta│a zapomniana, komputer A r≤wnie┐ musi j╣ pamiΩtaµ. Aby zako±czyµ transakcjΩ, administrator systemu zmusza komputer B do zapomnienia transakcji (zobacz nastΩpny rysunek). To z kolei pozwala zapomnieµ transakcjΩ na komputerze A. W ten spos≤b protok≤│ dwufazowego przekazu zosta│ wykonany rΩcznie, a transakcja zako±czona.
Wa┐ne Z powodu dwustronno£ci komunikacji opartej na protokole dwufazowego przekazu zaleca siΩ przeprowadzaµ transakcje rΩcznie, je£li tylko komputery nastΩpuj╣ce po sobie przerw╣ komunikacjΩ. W opisanym przyk│adzie przekaz nale┐a│o wymusiµ na komputerze C (nie D), a zapomnienie transakcji na komputerze B (nie A).
Je£li po awarii systemu lub po│╣czenia systemy uczestnicz╣ce w transakcji zostan╣ uruchomione ponownie, a po│╣czenia przywr≤cone, us│uga MS DTC przeprowadza transakcje automatycznie. Us│uga nie jest w stanie przeprowadziµ transakcji, je£li systemy uleg│y awarii, a po│╣czenia nie zosta│y przywr≤cone. W takim wypadku nale┐y rΩcznie przeprowadziµ transakcje, kt≤re znajduj╣ siΩ w stanach: "W╣tpliwa", "Nie mo┐na powiadomiµ o przerwaniu", "Nie mo┐na powiadomiµ o przekazaniu".
Stan w╣tpliwa odnosi siΩ do sytuacji, kiedy transakcja jest transakcj╣ podrzΩdn╣, us│uga MS DTC jest przygotowana, a nadrzΩdna us│uga MS DTC jest niedostΩpna. Aby przeprowadziµ transakcjΩ w╣tpliw╣, wykonaj nastΩpuj╣ce kroki:
Stan "Nie mo┐na powiadomiµ o przekazaniu" oznacza, ┐e transakcja zosta│a przekazana, ale niekt≤re podrzΩdne us│ugi MS DTC nie zosta│y o tym powiadomione. W takim wypadku nale┐y przeprowadziµ transakcjΩ rΩcznie. Po pierwsze, nale┐y klikn╣µ transakcjΩ prawym przyciskiem myszy. Zostan╣ w≤wczas wy£wietlone nadrzΩdne i podrzΩdne us│ugi MS DTC transakcji. Po zlokalizowaniu podrzΩdnych us│ug MS DTC nale┐y w ka┐dej z nich wymusiµ przekazanie transakcji. Na sam koniec nale┐y powr≤ciµ do us│ugi MS DTC, kt≤ra pokazywa│a transakcjΩ w stanie "Nie mo┐na powiadomiµ o przekazaniu" i wymusiµ zapomnienie transakcji.
Notka Nie nale┐y wymuszaµ rΩcznie zapominania transakcji, dop≤ki o wyniku transakcji nie zostan╣ powiadomione wszystkie podrzΩdne us│ugi MS DTC.
Stan "Nie mo┐na powiadomiµ o przerwaniu" oznacza, ┐e transakcja zosta│a przerwana, ale niekt≤re podrzΩdne us│ugi MS DTC nie zosta│y o tym powiadomione. Stan ten jest to┐samy ze stanem "Przerywana". Aby przeprowadziµ transakcjΩ rΩcznie, nale┐y wykonaµ nastΩpuj╣ce kroki. Po pierwsze, nale┐y klikn╣µ transakcjΩ prawym przyciskiem myszy. Zostan╣ w≤wczas wy£wietlone nadrzΩdne i podrzΩdne us│ugi MS DTC transakcji. Po zlokalizowaniu podrzΩdnych us│ug MS DTC nale┐y w ka┐dej z nich wymusiµ przerwanie transakcji. Na sam koniec nale┐y powr≤ciµ do us│ugi MS DTC, kt≤ra pokazywa│a transakcjΩ w stanie "Nie mo┐na powiadomiµ o przerwaniu" i wymusiµ zapomnienie transakcji.
Notka Nie nale┐y wymuszaµ rΩcznie zapominania transakcji, dop≤ki o wyniku transakcji nie zostan╣ powiadomione wszystkie podrzΩdne us│ugi MS DTC.
Aby przeprowaadziµ transakcjΩ
Zobacz te┐
Podstawowe informacje o transakcjach MTS, Zarz╣dzanie us│ug╣ MS DTC, Monitorowanie transakcji MTS, Monitorowanie transakcji MTS w systemie Windows 95, Podstawowe informacje o stanach transakcji MTS, Lista transakcji