Belirtiler

Microsoft SQL Server 2012 veya Microsoft SQL Server 2014 ' de veritabanı yansıtmayı kullanırken, bir onaylama koşuluna, veritabanı ikizleme de askıya alınmış durumuna çıkabilir.

Neden

Bu sorun, yeni bir sayfa ayrılırken SQL Server yeni sayfada bir X kilidi aldığında oluşur. SQL Server, kilit isteğine yeni sayfanın ait olduğu hobt_id (yığın veya B-ağaç KIMLIĞI) koyar. Bununla birlikte, SQL Server hobt_id yansıtma günlüğüne yerleştirebilir ve birincil ve ayna arasında farklı kilit davranışlarıyla sonuçlanır. Bu, şöyle açıklanabilirsiniz:

  1. T1, sayfa P1

  2. T2 P1, yeni bir sayfa P2, yeni bir sayfa tahsis etmek için, burada bir Burada SQL Server hobt_id yansıtma günlüğüne yerleştirmedi.

  3. TX, bir T1 kilidini, P1 'dan P2 'e taşımak için bir kilit geçişi yapar.

  4. TX Committed, şimdi T2 Page P2 'i kullanabilir ve T2 sayfa P2 üzerinde başka bir IX Lock kullanıyor.

  5. T1 kabul edilmiş, şimdi T2 P2 on on on.

  6. Çok fazla eklendikten sonra, birincil tarafta bir kilit ilerletme işlemi gerçekleşir; ancak ayna üzerinde yükseltme işlemi sırasında, T2 sürüm

  7. Çok fazla sildikten sonra, sayfa P2 boşın ve serbest hale geldi.

  8. T3 yeni bir sayfaya gerek duyar ve P2 tahsis etmek için, bu bir X kilidi gerektirir, ancak yansıtmada 6 adımında bu adım başarısız oldu.

Bu yansıtmada, Kilit bloğunda hobt_id yanlış olduğundan adım 6, IX kilidini yayınlamayın. Bu yanlış hobt_id, adım 2 sırasında ve SQL Server 'ın hobt_id yansıtma günlüğüne yerleştirmediğinden kaynaklanır. Adım 2 ' deki TX çok kısa olduğundan ve bu işlem tamamlandığında yanlış hobt_id olan kilit bloğu serbest bırakılamadığı için genellikle hiçbir sorun görmezsiniz. Bununla birlikte, step3 'da kilitleme geçişi ve aşağıdaki adımları (4 ve 5) nedeniyle, yanlış hobt_id bu kilit bloğu korunur ve son olarak soruna neden olur. Adım 2 ' de doğru bir hobt_id kullandığından birincili Bu soruna sahip değildir. Ancak günlük kaydının doğru hobt_id yok.

Her bir SQL Server toplu güncelleştirmesi, önceki toplu güncelleştirmeyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. En son SQL Server güncelleştirmelerini gözden geçirin:

Geçici Çözüm

Bu soruna geçici bir çözüm için, yansıtmayı yeniden başlatın ve askıya alınan durumu sonlandırın.

Durum

Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.

Daha fazla yardıma mı ihtiyacınız var?

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Microsoft Insider 'a katılın

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?

Geri bildiriminiz için teşekkürler!

×