Sobes.tech
Middle+

Yeniləmə zamanı Xmin və Xmax ilə nə baş verir?

sobes.tech Süni İntellekt

AI-dan cavab

PostgreSQL-də UPDATE əməliyyatı zamanı, sadəcə sətir dəyişmir, əksinə, əslində yeni versiya yaradılır (MVCC — çox versiyalı mübarizə).

  • Xmin hazırkı versiyanı yaradan (əlavə edən) əməliyyatın identifikatorudur.
  • Xmax sətiri silmiş (məsələn, UPDATE və ya DELETE zamanı) əməliyyatın identifikatorudur.

UPDATE zamanı:

  1. Köhnə versiyaya, UPDATE edən hazırkı əməliyyatın identifikatoru olan Xmax verilir — bu, bu versiyanın artıq yeni əməliyyatlar üçün silinmiş sayıldığı anlamına gəlir.
  2. Yeni versiya yaradılır, yeni Xmin ilə — hazırkı əməliyyatın identifikatoru və boş Xmax ilə.

Beləliklə, UPDATE əsasən köhnə versiyanın DELETE və yeni versiyanın INSERT edilməsidir, bu da əməliyyatların izolyasiyasını və məlumatların uyğunluğunu təmin edir.