[pgsql-jp: 36405] Re: pgbench開始前のvacuum
J.Kuwamura
juk @ rccm.co.jp
2005年 11月 16日 (水) 15:32:07 JST
くわむらです
README.pgbench_jis によると、
--
-v このオプションを指定すると,ベンチマーク開始前に vacuum と
history のクリアを行ないます.-v と -n を省略すると,
最小限の vacuum などを行います.すなわち,history の削除,
と history, branches, history の vacuum を行います.
これは,vacuum の時間を最小限にしながら,パフォーマンスに
影響するゴミ掃除を効果的に行います.通常は -v と -n を
省略することをおすすめします.
--
となっています。具体的な影響というのがなんだかは、よくわかりません。
# 答になってない。mOm
On Wed, 16 Nov 2005 15:16:07 +0900
Satoshi Nagayasu <nagayasus @ nttdata.co.jp> wrote:
> 永安です。
>
> pgbenchを繰り返してかけていたのですが、
> pgbenchが始まる前のvacuum処理でacocuntsテーブルだけ
> vacuumされていないことに気付きました(オプション無しの時)。
>
> -vオプションを指定すると、accountsもvacuum analyze fullされる
> ようですが、オプションを指定しないとvacuumされません(concurrentも)。
>
> -------------------------------------------------------
> res = PQexec(con, "vacuum history");
> if (PQresultStatus(res) != PGRES_COMMAND_OK)
> {
> fprintf(stderr, "%s", PQerrorMessage(con));
> exit(1);
> }
> PQclear(res);
>
> fprintf(stderr, "end.\n");
>
> if (is_full_vacuum)
> {
> fprintf(stderr, "starting full vacuum...");
> res = PQexec(con, "vacuum analyze accounts");
> if (PQresultStatus(res) != PGRES_COMMAND_OK)
> {
> fprintf(stderr, "%s", PQerrorMessage(con));
> exit(1);
> }
> PQclear(res);
> fprintf(stderr, "end.\n");
> }
> }
> PQfinish(con);
> -------------------------------------------------------
>
> pgbenchを繰り返しているとaccountsだけがどんどん肥大していくのですが、
> なぜaccountsだけconcurrent vacuumの対象外になっているのか、
> 理由をご存知の方はおられますでしょうか?
>
> どなたかご存知でしたら教えていただけると助かります。
>
> よろしくお願いします。
> --
> NAGAYASU Satoshi <nagayasus @ nttdata.co.jp>
>
--
(株)計算力学研究センター 桑村 潤
〒142-0041 東京都品川区戸越1-7-1 戸越NIビル8F
http://www.rccm.co.jp/ KUWAMURA,Jun
電話番号=> 03-3785-3064 / FAX 03-3785-6066
J.Kuwamura
rC Cm
^
~
pgsql-jp メーリングリストの案内