A. MASALAH KEHILANGAN MODIFIKASI
WK Tour dan MK Tour akan melakukan perjalanan wisata ke Bali untuk mengisi liburan sekolah dengan memesan tiket pada sebuah maskapai penerbangan. Berdasarkan informasi ada beberapa kursi yang masih kosong pada pesawat Garuda untuk penerbangan Jakarta – Bali, yaitu A1-A4. Pada waktu yang bersamaan WK Tour dan MK Tour memesan Tiket pada bangku yang kosong. WK Tour memesan tiket untuk kursi A1-A3,sedangkan MK Tour memesan tiket untuk bangku A2-A4. Berdasarkan gambar diatas , Transaksi WK Tour akan membaca A1-A4 pada T1 dan MK Tour akan membaca A1-A4 pada T2, Transaksi WK Tour memodifikasi A1-A4 pada T3, dan Transaksi MK Tour memodifikasi record yang sama pada pada T5. Jika transaksi tersebut dieksekusi secara serial tanpa adanya selang waktu operasi maka Transaksi WK Tour akan kehilangan modifikasi karena Transaksi MK Tour melakukan modifikasi tanpa memperhatikan modifikasi dari Transaksi WK Tour pada T3.
SOLUSI :
Untuk mengatasi concurency maka perlu LOCKING (salah satu pengontrol concurency) yaitu dengan cara diberikan kunci X untuk transaksi yang pertama kali di modifikasi, jadi untuk transaksi berikutnya harus menunggu transaksi yang awal melepaskan kunci X ( synpoint ) tersebut. Dan memberikan kunci S untuk melihat saja.
B. MASALAH MODIFIKASI SEMENTARA
WK Tour dan MK Tour akan melakukan perjalanan wisata ke Bali untuk m
engisi liburan sekolah dengan memesan tiket pada sebuah maskapai penerbangan. Berdasarkan informasi ada beberapa kursi yang masih kosong pada pesawat Garuda untuk penerbangan Jakarta – Bali, yaitu A1-A15. Pada waktu yang bersamaan WK Tour dan MK Tour memesan Tiket pada bangku yang kosong. WK Tour me
mesan tiket untuk kursi A5-A10,sedangkan MK Tour memesan tiket untuk bangku A11-A15. Berdasarkan gambar diatas , Transaksi WK Tour akan membaca A1-A15 pada T1 dan M
K Tour akan membaca A11-A15 pada T4. Jika transaksi MK Tour membaca suatu record yang yang sudah dimodifikasi oleh Transaksi WK Tour tetapi belum terselesaikan maka (uncommitted). Maka Transaksi MK Tour akan membaca record yang salah ketika Transaksi WK Tour melakukan Rollback (pembatalan).
SOLUSI :
Untuk mengatasi concurency maka perlu LOCKING (salah satu pengontrol concurency) yaitu dengan cara diberikan kunci X untuk transaksi yang pertama kali di modifikasi, jadi untuk transaksi berikutnya harus menunggu transaksi yang awal melepaskan kunci X ( synpoint ) tersebut. Dan memberikan kunci S untuk melihat saja.
C. MASALAH ANALISA TIDAK KONSISTEN
WK Tour dan MK Tour akan melakukan perjalanan wisata ke Bali untuk
mengisi liburan sekolah dengan memesan tiket pada sebuah maskapai penerbangan. Berdasarkan informasi ada beberapa kursi yang masih kosong pada pesawat Garuda untuk penerbangan Jakarta – Bali. Ada 3 kelas yaitu kelas eksekutif (A), kelas Bisnis (B) dan kelas Ekonomi (C). Masing-masing kelas memilki bangku kosong yaitu : A = (A1 – A20), B = (B10- B24), C = (C20 – C240). Pada waktu yang bersamaan WK Tour dan MK Tour memesan Tiket pada bangku yang kosong. WKTOUR memesan kursi A mulai dari A5 – A15dan kursi B mulai dari B10 – B20. Pada saat bersamaan travel lain bernama MKTOUR juga sedang melihat kursi kosong pada maskapai yang sama memesan kursi kelas A dari A16 – A20 dan kelas C dari C20 – C22. Bersamaan dengan MKTOUR yang selesai melakukan transaksi, WKTOUR kembali memesan kelas C dari C20 – C24, teryatakursi yang berhasil di pesan hanya C23 – C24. Hal ini disebabkan pada saat WKTO
UR ingin memesan kursi kelas C, dia tidak melakukan pembacaan lagi, padahal nilainya telah berubah karena kursi kelas C sudah di pesan sebelumnya oleh MKTOUR.
SOLUSI :
Untuk mengatasi concurency maka perlu LOCKING (salah satu pengontrol concurency) yaitu dengan cara diberikan kunci X untuk transaksi yang pertama kali di modifikasi, jadi untuk transaksi berikutnya harus menunggu transaksi yang awal melepaskan kunci X ( synpoint ) tersebut. Dan memberikan kunci S untuk melihat saja.
Tidak ada komentar:
Posting Komentar