Veri

Marten 9.52.0: projeksiyon başlangıç tabanları ve ExceptionTransforms

Marten 9.52.0, PostgreSQL üzerinde çalışan .NET doküman ve olay deposu için yeni bir şema tablosu, yeni bir istisna dönüşüm seçeneği ve tenant silme düzeltmeleri getiriyor. Yükseltmeden önce şema geçişinin nasıl etkileyeceğini bilmek isteyen her Marten kullanıcısı için önemli.

Marten releases jeremydmiller
Yayın tarihi
Okuma süresi
3 dk okuma
agent çalıştırması #10
agent çalıştırması #10
Orijinale git github.com

Bu haberi bildir

Özette bir hata mı var, ya da bu içeriğin sahibi misin? Mesajın doğrudan bana e-posta olarak gelir.

Mesaj türü

Kilit noktalar

  • Yeni mt_event_projection_floors tablosu, bir sonraki schema uygulamasında her olay deposu için otomatik oluşturuluyor.
  • AsyncOptions.SubscribeFromFirstRun() projeksiyon başlangıç tabanlarını bu tabloya dayandırıyor.
  • StoreOptions.Advanced.ExceptionTransforms ile kendi SQLSTATE kodlarınızı tipli istisnalara eşleyebilirsiniz.
  • UndeleteDocumentAsync ile soft-delete edilmiş dokümanlar geri alınabiliyor.
  • Kalıcı veritabanı hataları artık ShardFailureCategory.ApplyEvent ile olayın adını raporluyor; dead-letter'a alınmıyorlar.
  • UseTenantPartitionedEvents altında tenant silme sırasında oluşan 23503 hataları düzeltildi.

Marten 9.52.0, JasperFx 2.93.1 üzerine kurulu olarak yayımlandı. En önemli şema değişikliği, her olay deposunun bir sonraki uygulamada migration olarak alacağı mt_event_projection_floors tablosu. Bu tablo, yeni AsyncOptions.SubscribeFromFirstRun() seçeneğinin kullandığı projeksiyon başlangıç tabanlarını saklıyor. Şeması henüz güncellenmemiş veritabanları projeksiyonlarını eskisi gibi başlatmaya devam ediyor.

Sürümle birlikte StoreOptions.Advanced.ExceptionTransforms geldi; uygulamalar kendi SQLSTATE kodlarını tipli istisnalara çevirebiliyor ve bu dönüşümler Marten'ın yerleşik olanlarından önce çalışıyor. UndeleteDocumentAsync ile silinmiş bir doküman geri alınabiliyor. Projeksiyon kodunda oluşan kalıcı veritabanı hataları artık paused shard raporunda olayın adıyla görünüyor. UseTenantPartitionedEvents altında tenant silinirken oluşan hatalar da düzeltildi.

Gerçek dünyada kullanımı

  • Birden fazla tenant'ı partition ile ayıran, olay tabanlı bir SaaS uygulaması
  • Veritabanı hatalarını tipli istisnalarla yakalamak isteyen, PostgreSQL kullanan bir servis
  • Silinmiş dokümanları yönetici panelinden geri almak isteyen bir CritterWatch tabanlı izleme aracı

Neden önemli

Marten'ı kullanan ekipler, yükseltmeden önce yeni tabloyu ve şema migration'ını test veritabanında doğrulamalı. Tenant silme hataları düzeldiği için partitioned yapı kullanan projeler de bu sürümden fayda sağlar.

Bu özet, Marten releases üzerindeki orijinal yazıdan agent tarafından üretildi. Yazının tamamı ve tüm hakları ilgili yazara/yayıncıya aittir. Orijinal yazıya git

Benzer haberler

Geri bildirim

Bir hata mı buldun, bir fikrin mi var? Yazdığın mesaj doğrudan bana e-posta olarak gelir.

Mesaj türü