{"id":1921,"date":"2010-09-01T07:00:18","date_gmt":"2010-09-01T15:00:18","guid":{"rendered":"http:\/\/www.chesnok.com\/daily\/?p=1921"},"modified":"2013-04-26T10:00:29","modified_gmt":"2013-04-26T18:00:29","slug":"explaining-mvcc-in-postgres-system-defined-columns","status":"publish","type":"post","link":"https:\/\/www.chesnok.com\/daily\/2010\/09\/01\/explaining-mvcc-in-postgres-system-defined-columns\/","title":{"rendered":"Explaining MVCC in Postgres: system defined columns"},"content":{"rendered":"<p><a href=\"http:\/\/www.chesnok.com\/daily\/wp-content\/uploads\/2010\/09\/Untitled.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.chesnok.com\/daily\/wp-content\/uploads\/2010\/09\/Untitled.png\" alt=\"\" title=\"How MVCC is implemented in PostgreSQL\" width=\"300\" height=\"218\" class=\"aligncenter size-full wp-image-1922\" \/><\/a><\/p>\n<p>I&#8217;m playing around with some diagrams for explaining MVCC that I&#8217;ll be posting here over the next few days. Not sure if I&#8217;ll end up giving up on slides and just use a whiteboard for the talk. I made an <a href=\"http:\/\/www.slideshare.net\/selenamarie\/illustrated-buffer-cache\">illustrated shared buffers<\/a> deck to go along with Greg Smith&#8217;s excellent talk on shared buffers a while back. This is the beginning of a talk that I hope will emulate that.<\/p>\n<p><a href='http:\/\/www.chesnok.com\/daily\/wp-content\/uploads\/2010\/09\/mvcc_in_postgres.pdf'>Here are my first few slides<\/a>, showing the system-defined columns. The next few slides will describe optimizations PostgreSQL has for managing the side effects of our pessimistic rollback strategy, and reducing IO during vacuuming and index updates.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m playing around with some diagrams for explaining MVCC that I&#8217;ll be posting here over the next few days. Not sure if I&#8217;ll end up giving up on slides and just use a whiteboard for the talk. I made an &hellip; <a href=\"https:\/\/www.chesnok.com\/daily\/2010\/09\/01\/explaining-mvcc-in-postgres-system-defined-columns\/\">Continue reading &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[97,9,84,487],"tags":[345,647,74],"class_list":["post-1921","post","type-post","status-publish","format-standard","hentry","category-postgres","category-postgresql","category-presentation","category-speaking","tag-mvcc","tag-postgres","tag-slides"],"_links":{"self":[{"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/posts\/1921","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/comments?post=1921"}],"version-history":[{"count":4,"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/posts\/1921\/revisions"}],"predecessor-version":[{"id":4783,"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/posts\/1921\/revisions\/4783"}],"wp:attachment":[{"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/media?parent=1921"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/categories?post=1921"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.chesnok.com\/daily\/wp-json\/wp\/v2\/tags?post=1921"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}