Saya bertanya-tanya apakah seseorang dapat memverifikasi pemahaman saya mengenai perbedaan antara 3 istilah tersebut yang berkaitan dengan Oracle Databases.
Banyak sumber mengacaukan istilah-istilah ini dan tidak menjelaskannya secara terperinci sehingga agak sulit mencari info.
Dari apa yang saya kumpulkan:
- Komit dan komit cepat adalah hal yang sama persis, semua komit adalah komitmen cepat.
- Komit cepat pada dasarnya hanya memperbarui bendera di tabel transaksi dari header segmen undo / rollback untuk menunjukkan bahwa transaksi telah dilakukan. Namun, blok aktual tidak ditinjau kembali yang berarti bahwa alamat byte dibatalkan (UBA) dalam daftar transaksi yang tertarik (ITL) yang terletak di header blok data masih menunjuk ke tabel transaksi segmen undo yang sesuai. Selanjutnya, byte kunci dari baris yang sesuai tidak dilepaskan dan jumlah kunci di ITL tidak berubah (baris masih terkunci).
- Dalam komit cleanout, blok ini ditinjau kembali dan ITL diperbarui dengan komit SCN. Namun, jumlah kunci di ITL dan byte kunci yang disimpan pada setiap baris masih belum diperbarui (baris masih terkunci seperti di komit cepat), ini tidak menghasilkan pengulangan meskipun blok diubah.
- Blok yang dilakukan secara normal (== komitmen cepat) akan menjalani Pembersihan Blok Tertunda saat disentuh berikutnya (dan menghasilkan pengulangan).
- Blok yang telah menjalani pembersihan akan menjalani Pembersihan Blok Penundaan Tertunda saat mereka disentuh berikutnya (dan menghasilkan pengulangan).
Semoga seseorang dapat memverifikasi poin-poin ini! Terima kasih!