Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Manajer transaksi (TM) adalah instans log. Di KTM, objek TM menentukan log dan beberapa fungsionalitas TM. Biasanya ada banyak objek TM pada simpul tertentu. Resource manager (RM) harus dikaitkan dengan TM tertentu. Ada tiga jenis TM:
- TM volatil, yang tidak memiliki log.
- TM reguler, yang memiliki log dan digunakan untuk mengoordinasikan transaksi satu atau beberapa RM.
- Manajer transaksi yang unggul.
Manajer Transaksi Volatil
TM volatil adalah TM untuk RM baca-saja atau volatil. Ini tidak memiliki log dan tidak mempertahankan status transaksi di seluruh sistem dimulai ulang.
Manajer Transaksi
TM memiliki log, satu atau beberapa RM yang tahan lama atau volatil, atau keduanya. TM akan mempertahankan status transaksi di seluruh sistem dimulai ulang hingga transaksi selesai. Model yang diduga dibatalkan digunakan, sehingga transaksi yang aktif tetapi tidak disiapkan ketika objek TM dimatikan digulung balik. Ketika Anda membuka TM untuk pertama kalinya, Anda harus memulihkan TM dengan memanggil fungsiRecoverTransactionManager.
Manajer Transaksi Superior
TM yang unggul adalah TM untuk TM lainnya. Ini mengoordinasikan transaksi. Ini juga mengeluarkan pemberitahuan TRANSACTION_NOTIFY_PREPARE ke Kernel Transaction Manager (KTM). Contoh TM yang unggul adalah Koordinator Transaksi Terdistribusi Microsoft (DTC). Kemampuan ini dilengkapi dengan tanggung jawab waktu pemulihan tambahan. Selama pemulihan, RM harus terlebih dahulu memanggil fungsiOpenEnlistmentuntuk membuka kembali pendaftaran. Ini juga harus mengirimkan (atau mengirimkan kembali) hasil transaksi jika transaksi dilakukan; gratis untuk memberikan hasil dengan memanggil fungsiCommitTransactionatau fungsiRollbackTransaction. Kewajiban ini tidak berakhir sampai menerima peristiwa pemberitahuan TRANSACTION_NOTIFY_COMMIT_COMPLETE atau TRANSACTION_NOTIFY_ROLLBACK_COMPLETE terkait. Jika TM yang unggul gagal melakukan operasi ini pada waktu pemulihan, KTM akan membersihkan transaksi apa pun yang belum menerima hasil pada akhir fase pemulihan. Namun, ini dapat mengakibatkan hasil transaksi yang tidak konsisten.
Fungsi Manajer Transaksi
Fungsi berikut digunakan dengan manajer transaksi.
| Fungsi | Deskripsi |
|---|---|
| CreateTransactionManager | Membuat objek manajer transaksi (TM) baru dan mengembalikan handel dengan akses yang ditentukan. |
| GetCurrentClockTransactionManager | Mendapatkan nilai jam virtual dari manajer transaksi. |
| GetTransactionManagerId | Mendapatkan pengidentifikasi untuk manajer transaksi yang ditentukan. |
| OpenTransactionManager | Membuka manajer transaksi yang ada. |
| RecoverTransactionManager | Memulihkan status manajer transaksi dari file lognya. |
| RollforwardTransactionManager | Memulihkan status manajer transaksi dari file lognya ke nilai jam virtual yang ditentukan. |