İyimser Eşzamanlı İstisnalar(Optimistic Concurrency Exceptions)

İyimser eşzamanlı kontrolü (optimistic concurrency check (OCC)) AX 2009 da performance arttırma işlevidir. Gerçek güncelleme anına kadar, veri tabanından alınan bir kayıt değiştirilmeyecek varsayılır. Bunun anlamı veri tabanında ki bu kayıt üzerinde daha az kilit olması ve diğer kullanıcıların daha hızlı erişmesidir.
Aynı zamanda bunun anlamı bir kullanıcı kaydı güncellerken diğeride bu kaydı ele alabilir. Bu da kayıt tutarsızlığına sebep olabilir. Şöyle ki; eğer ikinci kullanıcıda kaydı güncellemeyi dener ise bir hata fırlatılır. Bu durumda sistem şunu yapar; recVersion alanını kullanarak hangisi güncellendi ise bir kayıt için her seferinde bir güncelleme yapılır.

OCC İstisna Yönetimi

catch (Exception::UpdateConflict)

{
if (appl.ttsLevel() == 0)
{
if (xSession::currentRetryCount() >= #RetryNum)
{
throw Exception::UpdateConflictNotRecovered;
}
else
{
retry;
}
}
else
{
throw Exception::UpdateConflict;
}
}
Eğer OCC için bir sorun meydana gelir ise sistem UpdateConflict hatası fırlatır ve catch bloğu bu hatayı yakalar.
Kod tts seviyesini kontrol eder ve bu sıfır değil ise kod hala tts işlemi içindedir demektir ve diğer bir  UpdateConflict hatası fırlatır. Bu tts işlemi içinde olmayıncaya kadar devam eder. Kod yazarı kod tekrar çağırıldığında bütün verinin güncellenmiş olmasını temin etmelidir.
Birkez kod transaction dışına çıktığında, retry komutu çağırılır. Kod bloğu tekrar işletilir ve sorun belirlenen #RetryNum macro (varsayılan 5tir) sayısı kadar deneme boyunca devam ederse UpdateConflictNotRecovered istisnası fırlatılır ve işlem iptal edilir ve denemeler durur.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Dijital Dönüşümünüzü AI İle Hızlandırın

Dynamics 365 ve AI destekli çözümlerle iş süreçlerinizi optimize edin, verinizi anlamlı içgörülere dönüştürün ve büyümenizi sürdürülebilir hale getirin.

AI-Ready Enterprise Partner

Microsoft Dynamics 365 ERP, CRM, Power Platform, Azure, Power BI ve yapay zekâ çözümlerini bir araya getirerek kurumsal sistemlerinizi güçlendirir, operasyonel karmaşıklığı azaltır ve geleceğe hazır bir dijital mimari tasarlarız.

DMR olarak Microsoft ekosisteminde Business Applications, Digital & App Innovation ve Data & AI alanlarındaki yetkinliklerimizle; ERP’den CRM’e, bulut çözümlerinden yapay zekâ uygulamalarına kadar uçtan uca dijital dönüşüm hizmetleri sunuyoruz.

Dynamics 365 Finance ve Supply Chain specialization uzmanlığımızı, Tier 1 CSP gücümüzle birleştirerek müşterilerimize danışmanlık, uygulama, lisanslama ve destek süreçlerinde bütünleşik bir hizmet modeli sağlıyoruz.

DMR Göztepe Merkez Ofis

Eğitim Mah. Hızırbey Cad. No:118/5 D:1 Kadıköy İstanbul

Marmara Üniversitesi Göztepe Kampüsü Teknopark

Tel: +90 216 470 79 49

E-posta: info@dmrbt.com

DMR Başıbüyük Ofis

Başıbüyük Mahallesi Süreyyapaşa Başıbüyük Yolu Sk. No: 4/7 Maltepe İstanbul

Marmara Üniversitesi Başıbüyük Kampüsü Teknopark

Tel: +90 216 470 79 49

E-posta: info@dmrbt.com