PostgreSQLのソースコード解析資料


■ 会社の仕事として作成した資料を、公開の許可をもらって、PostgreSQLのしくみ分科会に提供したものです。

IK01 ソースツリーとPostgreSQLのアーキテクチャ
 [ 第1回しくみ分科会勉強会資料 ]
ソースコードの概要とPostgreSQLのアーキテクチャ(まだ全体を読む前に書いたので、一般的なアーキテクチャ)  7.2対象。ソースを読みはじめた頃に書いたので、多少間違ったことを書いています…。
IK02 初期DBの作成処理(Bootstrap) 主に initdb で実行される内容 7.2 〜 7.4に対応した資料。8.0からinitdbがバイナリ化されています。
IK03 ストレージマネージャ(1) smgr, file  
IK04 ストレージマネージャ(2) page, buffer, freespace 本資料の内容は、7.xまでのアルゴリズム。8.0 からbuffer管理のアルゴリズムがARCに変更されたが、追従していません。
IK05 メモリ管理 utils/mmgr 7.4 で、メモリコンテキストの構成が若干変更になっています。書き直さなきゃ…。
IK06 postmaster
 [ 第4回しくみ分科会勉強会資料 ]
postmaster の処理フロー、シグナル処理などについて説明  
IK07 postgresプロセスの概要 postgresプロセスの処理フロー、エラー処理など  
IK08 プロセス間通信(IPC) 共有メモリ、シグナル、共有 inval メッセージ  
IK09 MVCC MVCCの動作および実装方法について  
IK10 node 構造 node 構造の説明  
IK11 字句解析と構文解析 字句解析器と構文解析器の説明。簡単にflexとbisonも解説。  
IK12 トランザクションマネージャ    準備中 (一応書いたのですが、ほかの人にチェックしてもらったら、ウソがたくさん見つかったので公開できそうにないです)
IK13      都合により欠番 
IK14 VACUUMの実装 VACUUMの実装に付いての説明。 indexのvacuumなどは、調べていません。
IK15 意味解析器(アナライザ) parse_analyze() の処理についての説明。  
IK16 バックグラウンドライタプロセス バックグラウンドライタプロセスについて説明。  
       

 


■ hack

 


TOP_PAGE  PostgreSQL TOP
2007.06.12 更新

井久保 寛明