Jumat, 19 Juni 2009

Concurancy Bag II

2 Masalah Modifikasi Sementara
Masalah ini timbul jika transaksi membaca suatu record yg sudah dimodifikasi oleh transaksi lain tetapi belum terselesaikan (Uncomited),terdapat kemungkinan kalau transaksi tersebut dibatalkan (Rollback),biasa terjadi pada saat listrik padam.
Contoh masalah modifikasi sementara :
Permasalahan sama dengan Concurancy bagian 1,hanya saja kursi yg tersedia adalah A1-A15.Berikut transaksi pemesanan yg terjadi:
Waktu
Transaksi WK_TOUR
Transaksi NK_TOUR
Sisa Kursi
TI
Read Kursi
………………………….
A1-A15
T2
PSN=A5-A10
………………………..
A1-A15
T3
Write Kursi
……………………….
(A1-A4), (A11-A15)
T4
………………………..
Read Kursi
(A1-A4), (A11-A15)
T5
………………………..
PSN=A11-A15
(A1-A4), (A11-A15)
T6
……………………….
Write Kursi
(A1-A4),(A11-A15)
T7
RollBack
………………………
A1-A4
Penjelasan :
Pada waktu T1,Agen WK_TOUR melihat jumlah kursi yg ada
T2,Lalu ia memesan Kursi A5-A10
T3,Maka sisa kursi yg tersedia adalah A1-A4) dan (A11-A15)
T4,NK_TOUR Membaca jumlah kursi yg telah termodifikasi
T5,Lalu memesan kursi A11-A15
T6,Pada saat WK_TOUR ingin menyelesaikan transaksi,Tiba-tiba
saja terjadilah listrik padam,dan menyebabkan sisa kursi yg
terbaca masih tetap
T7,Hal inimenyebabkan terjadi Rollback sisa kursi yaitu dari kursi
A1-A4
Pemecahan Masalah Modifikaasi Sementara :
Waktu
Transaksi WK_TOUR
Transaksi NK_TOUR
Sisa Kursi
TI
Read Kursi
………………
A1-A15
T2
Kunci X
………………
A1-A15
T3
PSN=A5-A10)
………………
A1-A15
T4
Write Kursi
………………
(A1-A4), (A11-A15)
T5
SYN
………………
(A1-A4), (A11-A15)
T6
………………
Read Kursi
(A1-A4), (A11-A15)
T7
………………
Kunci X
(A1-A4), (A11-A15)
T8
………………
PSN=(A11-A15)
(A1-A4), (A11-A15)
T9
………………
Write Kursi
A1-A4
T10
………………
SYN
A1-A4
Penjelasan :

Pada waktu T1,WK_TOUR membaca jumlah kursi yg tersedia
T2,Untuk melakukan Modifikasi,WK_TOUR memasang kunci X
T3, Lalu ia memesan Kursi A5-A10
T4, Maka sisa kursi yg tersedia adalah A1-A4) dan (A11-A15)
T5,WKTOUR melakukan Pelepasan Kunci X
T6, NK_TOUR Membaca jumlah kursi yg telah termodifikasi
T7,Sebelum melakukan Modifikasi,NK_TOUR memasang Kunci X
T8, Lalu memesan kursi A11-A15
T9,MAka Sisa Kursi yg tersdia adalah kursi A1-A4
T10, NKTOUR melakukan Pelepasan Kunci X
Jika pada saat waktu yg berikutnya WK_TOUR melakukan pembatalan (Rollback)pesanan atau terjadi listrik padam,maka hal tersebut tidak dapat merubah jumlah kursi yg tersedia.Hal ini dikarenakan telah terjadi modifikasi oleh NK_TOUR dengan menggunakan kunci X

Tidak ada komentar: