Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
SQL Server 2025 Optimized Locking: TID Locking, Lock After Qualification ve Davranış Değişiklikleri
Optimized locking açıldığında 1.000 satırı güncelleyen transaction 1.017 lock yerine tek bir XACT lock tutar ve escalation olmaz; RCSI de açıksa LAQ, UPDATE'in predicate'ini son commit edilmiş versiyonda lock almadan değerlendirir, blocking kalkar ama bazı eşzamanlı işlerin sonucu değişebilir. ADR ön koşulu, yeni LCK_M_S_XACT wait'leri, LAQ'ı kapatan hint'ler, deadlock graph'taki xactlock ve 2019/2022 farkı gerçek ölçümlerle.
Lock'lar ve Blocking: Lock Mode'ları, Granularity, Lock Escalation ve Blocking Zincirini Bulmak
Tek satırlık bir UPDATE bile dört lock tutar ve SQL Server lock isteklerini sıraya koyar; bu yüzden zincirin kökünü sys.dm_exec_requests ve sys.dm_exec_sessions ile ararsın. Lock mode'ları ve compatibility matrisi, laboratuvarda 6.249 lock'ta ölçülen escalation, UPDLOCK/SERIALIZABLE ile güvenli upsert, READPAST ile queue table, LOCK_TIMEOUT ve migration'ın Sch-M ile bütün okuyucuları durdurması gerçek çıktılarla.