C#

Entity Framework ve “sp_reset_connection” Çağrımları

Entity Framework kullanıp ta “SQL Trace” kayıtları arasında çok sayıda “sp_reset_connection” çağrımı görebilirsiniz.

“Connection pooling” kullanılan ortamlarda (genellikle web uygulamalarında) bir “connection” havuzdan (connection pool) alınıp tekrar kullanıldığında çeşitli konuların (set opsiyonları, “session” değişkenleri vs…) varsayılan ayarlara geri dönmesi gerekmektedir. Aksi taktide bir önceki “session” için değiştirilen ayarlar sonraki içinde kullanılacaktır ve bu varsayılmayan bir durum oluşturacaktır. Bu durumda “SQLClient” “sp_rsest_connection” prosedürünü çağırarak değerleri tekrar ayarlar.

Bunun sıkıntı yaratan bir durum olduğuna dair bir belirtiye rastlamadım. Burada dikkat edilmesi gereken durum bir önceki “session” için ayarlanan “ISOLATION LEVEL” “sp_reset_connection” tarafından varsayılan değerine ayarlanmaz. Bu durum beklenmedik durumlara yol açabilir. http://connect.microsoft.com/SQLServer/feedback/details/243527/sp-reset-connection-doesnt-reset-isolation-level

 

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir