sql >> Databasteknik >  >> RDS >> PostgreSQL

Vad står TX- och XID-fraktioner för i postgres pgadmin-verktyget

Virtuella transaktions-ID:n har formatet "n/nnnn". Verkliga XID är bara heltal. Den första delen av den virtuella xid är en backend-identifierare som är unik för varje anslutning; den andra delen är ett temporärt transaktions-id som tilldelas av den anslutningens backend för dess transaktioner.

Se definitionen av VirtualTransactionId i src/include/storage/lock.h för detaljer.

Dessa kolumner verkar motsvara virtualxid och/eller transactionid och virtualtransaction kolumner i pg_locks . Se dokumenten .

Om jag har rätt i det då:

  • "TX" är det virtuella transaktions-ID för transaktionen som håller eller väntar på låset.
  • "XID" är det virtuella transaktions-ID för transaktionen som den väntande transaktionen riktar mot, om målet är en virtuell xid. I PgAdmin kan det också visa xid för målet om det är en normal xid.

Virtuella transaktions-ID:n är tillfälliga, övergående transaktions-ID:n som PostgreSQL allokerar till varje transaktion vid transaktionsstart. De är inte inspelade på disk. En riktig xid tilldelas endast när transaktionen gör något som kräver en transaktionsskrivning till disk.

Enligt den länkade manualen:




  1. Uppdatera MySQL-tabell med CSV-fil

  2. Anslut PDO med Oracle-databas

  3. Hur skulle du lagra ett företags timmar i db/modellen av en Rails-app?

  4. Hämta löpande total rekordtillväxt över tid i mysql