2009-02-01から1ヶ月間の記事一覧

バッファ管理の仕組みに苦戦中

バッファ管理の仕組みを理解したいなぁと思っているんだけど、なかなか難しい。 HeapTupleHeader、HeapTupleData、TupleTableSlotなどという構造体の役割の違いがいまいち理解できない。明日はこのあたりを参考にしてもうちょっとがんばる。 https://www.cod…

チェックポイントでの同期

昨日疑問に思ったチェックポイント処理を見てみた。やっぱりチェックポイントでも同期していた。チェックポイントはwriter processが担当する。ソースファイルでいうとbgwriter.c 。チェックポイントの処理ではDBMSのバッファキャッシュ上のダーティなデータ…

トランザクションログへの同期

Linuxだとデフォルトでは fdatasync() が使われることを確認。同期するのは、トランザクションログだけで、それ以外のファイルへは同期はしていなさそう(OSにまかせている)。関数で言うとXLogWrite()とか、issue_xlog_fsync()とか、BasicOpenFile()あたり…