“Kaos” İzolasyon seviyesi nedir ve ne zaman kullanılmalıdır?


26

ADO.NET belgeleri, bir SQL işleminin işlem düzeyini Kaos olarak belirleme olasılığını gösterir. Hoş olmayan geliyor, ancak özellik varsa, muhtemelen meşru bir kullanım alanı vardır.

BOL içindeki SET TRANSACTION ISOLATION LEVEL komutu (ah! Bkz. Google ve BOL kullanabilirim) hiçbir şey "kaos" olarak adlandırılmaz ve ADO.NET "kaosa" ek olarak belgelenmiş düzeylerle iyi eşleşen 5 moda sahiptir

Bu kaos seviyesi ne veya kimin için? (Neden dostça bir isim yok?)

Referanslar: ADO.NET enum

Yanıtlar:


11

DB2 belgelerine göre, değişikliklerin veritabanında yapılmasının en kısa sürede gerçekleştirilmesi (başkalarının görmesi için) çok garip bir yalıtım seviyesidir.

Açıkça söylemiyor, ama söyleyebileceğim kadarıyla geri dönüş de yok. Temel olarak, hiçbir işlem anlamına gelir . "'İşlem' diyorsun, ama gerçekten umrumda değil". Böylece -> kaos.

Aslında, bazı e-posta listelerinde "Kaos" un "DBONE for i" de "* NONE" işlem seviyesine eşlendiğini gördüm .


Kaos, Reuter ve Gray tarafından İşlemsel İşleme teorisinde açıklandığı gibi Derece 0 izolasyondur. Eğer Okuyan Bilgilendirme'nin gerçekten okunmakta olan verilerin yalıtımı ile ilgili olduğunu düşünüyorsanız (ve bu arada kaos ile aynı değildir). Kaos (diğer izolasyon derecelerinde olduğu gibi) birçok özelliğe sahiptir - bunlardan en ilginç olanı, 3. Dereceyi ihlal edebilme kabiliyetidir (seri hale getirilebilir tekrarlanabilir okuma). Sonuç olarak, Kaos'un yalnızca doğru bağlamda kullanılması gerektiği (yani, geri alma gerektirmeyen veri kümeleri için yalnızca tam yalıtımlı olarak çalışmayı öneriyorum).
Mark Broadbent


7

DB2 "Kaos" adı verilen bir işlem yalıtım seviyesine sahiptir:

DB2Connection.ConnectionString özelliği - IBM Bilgi Merkezi

Belki de bunun için kullanılmak içindir. Gerçekten emin değilim, ancak tanımlanabilir bir işlem yalıtımı olmadığı anlamına gelir.


2
Sadece Sistem için görünüyor. Bunun ne anlama geldiğini biliyor musun? Bu konuda fazla bilgi bulamıyorum, hiçbir taahhüt yok diyor bu yüzden her bir ifadenin anında gerçekleştirildiği anlamına geldiğini düşünüyorum. Ama bu izolasyon seviyesine dik görünüyor, bu yüzden muhtemelen başka bir şey var
Lennart
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.