MVCC (Multi-Version Concurrency Control) είναι ο τρόπος με τον οποίο το PostgreSQL χειρίζεται την ταυτόχρονη πρόσβαση — αντί να κλειδώνει σειρές για ανάγνωση, διατηρεί πολλαπλές εκδόσεις σειρών, έτσι ώστε κάθε συναλλαγή να βλέπει ένα συνεπές snapshot των δεδομένων. Το κύριο πλεονέκτημα: οι αναγνώστες δεν αποκλείουν τους συγγραφείς, και οι συγγραφείς δεν αποκλείουν τους αναγνώστες, επιτρέποντας υψηλή ταυτοχρονία.
Η βασική ιδέα: πολλαπλές εκδόσεις σειρών
When a row is UPDATED, Postgres doesn't overwrite it — it creates a NEW version and
marks the old one obsolete. Different transactions can see different versions.
→ Each transaction sees a consistent SNAPSHOT of the database as of its start
(depending on isolation level), unaffected by others' uncommitted changes.
