1. cometpeak
  2. db-cc

Commits

bitblaze  committed baef089

Updated analysis

  • Participants
  • Parent commits 7b18aff
  • Branches master

Comments (0)

Files changed (1)

File analysis.txt

View file
 does not contain an entry for Xmin. This both simplifies visibility checking 
 and allows us to simply just check Xmin, Xmax, and our snapshot of pg_log.
 
-Pruning pg_log entries this way may work in Postgres. Enforce the invariant
-that a deleted pg_log entry means that the Xaction has committed. The 
-snapshot received by each Xaction must also describe whether the Xmin's
-Xaction has committed (i.e. pg_log's entry for Xmin does not exist) in
-addition to whether it is in progress. However, considering the fact that
-Postgres's pg_log must be written to disk, having such frequent deletes
-may incur a greater overhead in comparison to the completely in-memory
-pg_log in our system.
+Pruning committed entries from pg_log will not work in PostgreSQL. Another
+major difference between our system and Postgres is that while our system
+is completely in-memory, Postgres must write to disk. In the event of a
+crash, if pg_log entries for transactions that are committed but may not
+have been written to disk are deleted, then we may not have enough information
+for recovery since the system might not be able to figure out if those
+transactions actually occurred.
 
 MVCC great advantage is that it effectively negates the effects of contention 
 on read (no transaction ever must wait for another to finish using a resource