[pgsql-jp: 34243] Re: PostgreSQL のレスポンス

Y.Shimada yshim_pgsql @ storgate.co.jp
2004年 11月 4日 (木) 09:52:24 JST


島田@Storgateともうします。

at [04.11.04 07:53],  [SAKATA Testuo]-san wrote;

>BLCKSZをサーバを構築した時に変更していない限り、
>各バッファは8192バイトです。

 たまたま、7.4.6 のソースを開いていたもので、
ちょっと grep してみました。
以下多分関連するであろうと考えられる個所を羅列します。
特にソースを変更しなければ、shared_buffersの指定単位は 8KB
では。

(1) include/pg_config_manual.h で block サイズを以下と定義
    #define BLCKSZ    8192

(2) backend/utils/init/globals.c で
    NBuffers = 1000; と初期設定

(3) backend/utils/misc/guc.c で
    postgresql.conf の shared_buffers の値で NBuffers を上書き
    するようセット

(4) backend/storage/buffer/buf_init.c の
    関数、BufferShmemSize(void) の中で割り当てるサイズを以下で計算
   	/* size of data pages */
   	size += NBuffers * MAXALIGN(BLCKSZ);

(5) backend/port/sysv_shmem.c の
    関数、PGSharedMemoryCreate(..) 以下で、 shmget() により
    共有メモリを割当て

------------------------------------------------------------------------
    Storgate Co.LTD.       URL:www.storgate.co.jp





pgsql-jp メーリングリストの案内