OSDN Git Service
Takashi Suzuki [Thu, 22 Nov 2012 08:56:49 +0000 (17:56 +0900)]
リグレッションテストをDBクラスタのエンコードの影響を受けなくした。
Takashi Suzuki [Thu, 22 Nov 2012 08:56:17 +0000 (17:56 +0900)]
Makefileをリファクタリングした
Takashi Suzuki [Thu, 22 Nov 2012 05:40:43 +0000 (14:40 +0900)]
パラメータ名変更に伴いリグレッションテストを修正した。
Takashi Suzuki [Thu, 22 Nov 2012 05:40:27 +0000 (14:40 +0900)]
ドキュメントと同様に、ソースコードのパラメータ名を変更した。
Takashi Suzuki [Thu, 22 Nov 2012 04:10:00 +0000 (13:10 +0900)]
パラメータ名をよりわかりやすいものに変更した。
Takashi Suzuki [Wed, 21 Nov 2012 09:47:40 +0000 (18:47 +0900)]
クエリに明記されていないテーブルへのヒント適用についてマニュアルに追記した。
Takashi Suzuki [Mon, 19 Nov 2012 07:33:55 +0000 (16:33 +0900)]
Merge branch 'cvc_fix' of git://moomin/pg_hint_plan into IndexOnly
Takashi Suzuki [Mon, 19 Nov 2012 06:45:42 +0000 (15:45 +0900)]
IndexOnlyScanヒント用のテストを実装した。
Shigeru Hanada [Mon, 19 Nov 2012 05:59:53 +0000 (14:59 +0900)]
用語を統一(GUCパラメータ)
Shigeru Hanada [Mon, 19 Nov 2012 05:50:06 +0000 (14:50 +0900)]
9.2でのcustom_variable_classesの廃止に対応。
postgresql.confでpg_hint_plan独自パラメータを設定する際に、9.1でのみ
custom_variable_classes設定が必要であることを記述した。
Takashi Suzuki [Mon, 19 Nov 2012 00:21:46 +0000 (09:21 +0900)]
CREATE TABLE AS EXECUTE対応のために、ソースコードと試験を修正した。
Takashi Suzuki [Fri, 16 Nov 2012 01:56:15 +0000 (10:56 +0900)]
CREATE TABLE AS EXECUTE対応の準備として動作確認用の試験を追加した。
Takashi Suzuki [Thu, 15 Nov 2012 10:16:03 +0000 (19:16 +0900)]
IndexOnlyScanヒント用のテストを途中まで実装した。
クエリから考え直す項目がある。
その考え直す項目はexpected/indexonly-9.2.outの出力結果を空行にしている。
Takashi Suzuki [Wed, 14 Nov 2012 11:02:46 +0000 (20:02 +0900)]
IndexOnlyScanヒントのコードをScanヒントのグループの最後に移動した。
Takashi Suzuki [Wed, 14 Nov 2012 09:13:19 +0000 (18:13 +0900)]
[No]IndexOnlyScanヒントの試験パターンを追加し、目的コメントを加えた。
Takashi Suzuki [Wed, 14 Nov 2012 02:04:10 +0000 (11:04 +0900)]
IndexOnlyScanヒントの制限の説明をより誤解されにくい形に修正した。
Takashi Suzuki [Wed, 14 Nov 2012 01:58:01 +0000 (10:58 +0900)]
2つのヒントの説明をより誤解されにくい形に修正した。
Takashi Suzuki [Wed, 14 Nov 2012 01:19:33 +0000 (10:19 +0900)]
NoIndexScanヒントの制限の説明で冗長な部分を削除した。
Takashi Suzuki [Wed, 14 Nov 2012 01:15:45 +0000 (10:15 +0900)]
PostgreSQLのバージョン表記で余分な単語を省いた。
Takashi Suzuki [Wed, 14 Nov 2012 01:12:29 +0000 (10:12 +0900)]
IndexOnlyScanヒントの制限の説明文を読みやすい形に修正した。
Takashi Suzuki [Tue, 13 Nov 2012 08:04:38 +0000 (17:04 +0900)]
[No]IndexOnlyScan対応によって生じた注意書きをマニュアルに追記した。
Takashi Suzuki [Tue, 13 Nov 2012 08:03:37 +0000 (17:03 +0900)]
[No]IndexOnlyScanの説明をマニュアルに追記した。
Takashi Suzuki [Tue, 13 Nov 2012 04:04:25 +0000 (13:04 +0900)]
[No]IndexOnlyScanヒントの試験を追加した。
Takashi Suzuki [Mon, 12 Nov 2012 10:22:26 +0000 (19:22 +0900)]
[No]IndexOnlyScanヒントを追加した。
Takashi Suzuki [Thu, 8 Nov 2012 12:01:46 +0000 (21:01 +0900)]
ビルドなどでできる一時ファイルをgitで無視するようにした。
Takashi Suzuki [Thu, 8 Nov 2012 11:55:12 +0000 (20:55 +0900)]
PREPAREの試験を削除した。
PG9.1とPG9.2でそれぞれのPREPAREの挙動を確認するために加えられていた
ので削除した。
Takashi Suzuki [Thu, 8 Nov 2012 11:47:41 +0000 (20:47 +0900)]
初期のリグレッションをマルチバージョンに対応させた。
Takashi Suzuki [Thu, 8 Nov 2012 11:05:48 +0000 (20:05 +0900)]
スキャン方式の試験(ut-S)をマルチバージョンに対応させた。
Mitsuru Hasegawa [Thu, 8 Nov 2012 10:10:48 +0000 (19:10 +0900)]
結合方式の試験(ut-J)をマルチバージョンに対応させた。
Mitsuru Hasegawa [Thu, 8 Nov 2012 09:58:06 +0000 (18:58 +0900)]
結合順序の試験(ut-L)をマルチバージョンに対応させた。
Takashi Suzuki [Thu, 8 Nov 2012 09:51:45 +0000 (18:51 +0900)]
プランナ再帰呼び出しの試験(ut-A2)をマルチバージョンに対応させた。
Mitsuru Hasegawa [Thu, 8 Nov 2012 09:43:12 +0000 (18:43 +0900)]
GUCパラメータの試験(ut-G)をマルチバージョンに対応させた。
Takashi Suzuki [Thu, 8 Nov 2012 09:38:32 +0000 (18:38 +0900)]
機能に依存しない試験(ut-A)をマルチバージョンに対応させた。
Takashi Suzuki [Thu, 8 Nov 2012 06:17:12 +0000 (15:17 +0900)]
リグレッションテストのinitテストをマルチバージョンに対応させた。
Takashi Suzuki [Thu, 8 Nov 2012 05:53:15 +0000 (14:53 +0900)]
リグレッションテストのファイル構成をマルチバージョンに対応可能にした。
PG9.2でのリグレッションテストはまだ通らない。
Takashi Suzuki [Thu, 8 Nov 2012 05:06:56 +0000 (14:06 +0900)]
PG9.2版 RPM 作成用の SPECファイルを作成した。
Takashi Suzuki [Thu, 8 Nov 2012 05:06:35 +0000 (14:06 +0900)]
PG9.1、PG9.2の両方でビルド可能にした。
Takashi Suzuki [Tue, 6 Nov 2012 08:27:26 +0000 (17:27 +0900)]
マニュアルの注意事項から修正済みの内容を削除した。
Takashi Suzuki [Fri, 2 Nov 2012 08:55:52 +0000 (17:55 +0900)]
ヒント使用状況ごとのデバッグログ出力確認試験(試験項目A-13-4-*)を追加した。
Takashi Suzuki [Fri, 2 Nov 2012 08:27:33 +0000 (17:27 +0900)]
再帰呼び出しに関するデバッグログ出力回数(項目A-13-3-*)の試験を追加した。
Takashi Suzuki [Fri, 2 Nov 2012 08:24:22 +0000 (17:24 +0900)]
ヒント使用の確認試験(追加試験項目A-13-2-*)を追加した。
Takashi Suzuki [Fri, 2 Nov 2012 06:48:52 +0000 (15:48 +0900)]
プランナを再帰的に呼び出す場合の試験用ファイルを作成した
Shigeru HANADA [Fri, 26 Oct 2012 08:54:50 +0000 (17:54 +0900)]
Refactor parse_head_comment; simplified code.
Shigeru HANADA [Fri, 26 Oct 2012 08:44:59 +0000 (17:44 +0900)]
Enhance comments.
Shigeru HANADA [Fri, 26 Oct 2012 08:39:22 +0000 (17:39 +0900)]
Move name constatnts near by enum.
This would improve maintenancebility.
Shigeru HANADA [Fri, 26 Oct 2012 08:27:33 +0000 (17:27 +0900)]
Refactor function name.
Shigeru HANADA [Fri, 26 Oct 2012 08:25:43 +0000 (17:25 +0900)]
Don't use the term AllHint.
Also refactored interface of HintCmp so that it doesn't require boolean
parameter "order".
Shigeru HANADA [Thu, 25 Oct 2012 05:13:24 +0000 (14:13 +0900)]
ヒント情報の構造体名を実態を表すものに変更した。
併せて、その構造体型の変数名/引数名も変更した。
Shigeru HANADA [Thu, 25 Oct 2012 02:46:51 +0000 (11:46 +0900)]
pop_hint の説明のコメントを記述した。
Shigeru HANADA [Thu, 25 Oct 2012 02:21:48 +0000 (11:21 +0900)]
PGのコーディング規約に従ってコードを整理した。
Takashi Suzuki [Wed, 24 Oct 2012 09:34:47 +0000 (18:34 +0900)]
PlanHint構造で使用する変数名をわかりやすい名前で統一した。
Takashi Suzuki [Wed, 24 Oct 2012 09:04:19 +0000 (18:04 +0900)]
現在のヒントを指すポインタをスタックからではなく直接得るようにした。
Takashi Suzuki [Wed, 24 Oct 2012 08:41:58 +0000 (17:41 +0900)]
push_hint の説明のコメントを記述した。
また、ヒント用スタックの実装にリストを使用しているが、ヒント用スタ
ックの上下とリストのデータ順の紐付けについて記述した。
Takashi Suzuki [Wed, 24 Oct 2012 08:22:59 +0000 (17:22 +0900)]
PGのコーディング規約に従ってコードを整理した。
Takashi Suzuki [Wed, 24 Oct 2012 08:02:10 +0000 (17:02 +0900)]
ヒント用スタック構造の関数名をわかりやすい名前に変更した。
Takashi Suzuki [Wed, 24 Oct 2012 07:32:26 +0000 (16:32 +0900)]
2行以上連続した空行を、空行1行に修正した。
Shigeru HANADA [Wed, 24 Oct 2012 06:36:20 +0000 (15:36 +0900)]
pg_hint_plan_plannerのクリーンアップ処理を連続で実行するように修正
併せてコメントを追加した。
Shigeru HANADA [Wed, 24 Oct 2012 06:23:10 +0000 (15:23 +0900)]
pop_stack内で中途半端な状態になる期間を短縮した。
Takashi Suzuki [Thu, 11 Oct 2012 09:05:07 +0000 (18:05 +0900)]
無駄なヒントパースの抑止
pg_hint_plan が無効の場合も常にヒント句をパースしてヒント情報を生成
していたので、pg_hint_plan が有効な場合にのみヒント句をパースするよ
うに修正した。
Takashi Suzuki [Thu, 11 Oct 2012 08:29:53 +0000 (17:29 +0900)]
ヒント用スタックが無効になる処理フローを有効となるように修正した。
pg_hint_plan.parse_messagesをerrorに設定した状態でヒントがエラーと
なると、ヒント用スタックのメモリが開放されて無効のままだった。この
状態でヒント句付きクエリを実行すると、無効状態のヒント用スタックを
使おうとしてエラーとなり、サーバが落ちてしまうため、ヒントがエラー
となってもヒント用スタックが有効となるように修正した。
Takashi Suzuki [Wed, 10 Oct 2012 09:38:16 +0000 (18:38 +0900)]
ヒント保存のスタックについてコメントを追加し、余分なものを削除した。
Takashi Suzuki [Wed, 10 Oct 2012 09:34:35 +0000 (18:34 +0900)]
ヒントのメモリの開放を、ヒントをポップする処理の中に含めた。
Takashi Suzuki [Wed, 10 Oct 2012 09:12:52 +0000 (18:12 +0900)]
ヒント保存用に使っていた構造をPG本体のリスト構造に修正した。
Takashi Suzuki [Wed, 10 Oct 2012 06:34:10 +0000 (15:34 +0900)]
現在のヒントを保存する変数の名前を適切なものに変更した。
Takashi Suzuki [Wed, 10 Oct 2012 06:22:49 +0000 (15:22 +0900)]
関数呼び出しをif文の条件部から外し、処理内容をわかりやすくした。
Takashi Suzuki [Wed, 10 Oct 2012 06:10:54 +0000 (15:10 +0900)]
pg_dbms_statsとの同時実行バグに関する修正案の仮実装
ヒント情報の保存の構造をスタック構造にした。
Shigeru HANADA [Mon, 24 Sep 2012 10:16:56 +0000 (19:16 +0900)]
メッセージスタイル修正に伴い、予想結果を修正。
Shigeru HANADA [Mon, 24 Sep 2012 10:14:18 +0000 (19:14 +0900)]
メッセージスタイルの修正漏れを修正。
Shigeru HANADA [Mon, 24 Sep 2012 10:05:40 +0000 (19:05 +0900)]
メッセージスタイルを統一した。
Mitsuru Hasegawa [Mon, 24 Sep 2012 09:43:36 +0000 (18:43 +0900)]
fix bug operation test No.10
planner_hookが再帰的に呼ばれる場合に、プランが部分的にのみ制御
されてしまう問題について、使用上の注意と制約としてドキュメントに
追加した。
Shigeru Hanada [Mon, 24 Sep 2012 02:00:21 +0000 (11:00 +0900)]
Add spec file to support RPM package distribution.
Mitsuru Hasegawa [Mon, 24 Sep 2012 02:22:06 +0000 (11:22 +0900)]
fix bug operation test No.9
PG_CATCH()を抜ける直前のErrorContextにスイッチする処理を削除した。
※PG_RE_THROW()しない場合は、ErrorContextに戻さなくても良い。
Mitsuru Hasegawa [Fri, 21 Sep 2012 08:14:28 +0000 (17:14 +0900)]
fix bug operation test No.8
識別子を切り詰める関数を、本体の関数をcopy & pasteしていたが、直接
関数を呼び出すように修整した。
また、メッセージの出力方針が他と異なるため、ユーザーズマニュアルに
注意として記述した。
Mitsuru Hasegawa [Fri, 21 Sep 2012 07:42:27 +0000 (16:42 +0900)]
fix bug operation test No.5,6,7
pg_hint_plan独自のGUCパラメータをSetヒントに指定した場合の挙動が
ユーザの想定する挙動でないと考えられるため、ユーザーズマニュアルに
制限事項として記述した。
Mitsuru Hasegawa [Fri, 21 Sep 2012 05:34:48 +0000 (14:34 +0900)]
fix bug operation test No.4
geqoアルゴリズムが使用される場合は、結合順序のヒントと結合方式のヒント
が使用されることをドキュメントに記述した。
Mitsuru Hasegawa [Mon, 10 Sep 2012 07:55:37 +0000 (16:55 +0900)]
fix bug No.3.
NAMEDATALENバイト以上のGUCパラメータをヒントに指定された場合も、
NAMEDATALEN - 1バイトに切り詰める対象に追加した。
Mitsuru Hasegawa [Mon, 10 Sep 2012 07:36:14 +0000 (16:36 +0900)]
fix bug No.2.
NAMEDATALENバイト以上のオブジェクト名を指定された場合は、
NAMEDATALEN - 1バイトに切り詰めた上で使用するように修正した。
Mitsuru Hasegawa [Thu, 6 Sep 2012 02:32:41 +0000 (11:32 +0900)]
add COPYRIGHT file.
Mitsuru Hasegawa [Thu, 6 Sep 2012 01:18:34 +0000 (10:18 +0900)]
複雑なクエリに対するSetヒントに関する試験(G-1-1-*)を追加した。
Mitsuru Hasegawa [Thu, 6 Sep 2012 00:54:17 +0000 (09:54 +0900)]
Merge branch 'ut_suzuki'
Takashi Suzuki [Mon, 27 Aug 2012 08:55:17 +0000 (17:55 +0900)]
デバッグログの出力メッセージ確認試験(G-2-4-*)を追加した。
Takashi Suzuki [Mon, 27 Aug 2012 08:26:47 +0000 (17:26 +0900)]
SetヒントとGUCパラメータの重複に関する試験(G-2-3-*)を追加した。
Shigeru HANADA [Mon, 27 Aug 2012 06:36:36 +0000 (15:36 +0900)]
Get rid of code for 9.2 features.
At the moment we support only 9.1, so removed code for 9.2 features such
as Index-only scan. This change can be reverted once we have decided to
support 9.2 or higher.
Shigeru HANADA [Mon, 27 Aug 2012 06:31:35 +0000 (15:31 +0900)]
Remove too-much optimization.
There was optimization to avoid overhead of error message construction,
but it seems overkill at the moment.
Shigeru HANADA [Mon, 27 Aug 2012 06:27:24 +0000 (15:27 +0900)]
Fix bug #0011, which crushes server on repeated Set hint failures.
Old implementation copies ErrorData and calls ereport again, but doesn't
flush error state at all. This sequence causes ErrorData stack overflow
and PostgreSQL panics in such situation.
Shigeru HANADA [Mon, 27 Aug 2012 06:36:36 +0000 (15:36 +0900)]
Get rid of code for 9.2 features.
At the moment we support only 9.1, so removed code for 9.2 features such
as Index-only scan. This change can be reverted once we have decided to
support 9.2 or higher.
Shigeru HANADA [Mon, 27 Aug 2012 06:31:35 +0000 (15:31 +0900)]
Remove too-much optimization.
There was optimization to avoid overhead of error message construction,
but it seems overkill at the moment.
Shigeru HANADA [Mon, 27 Aug 2012 06:27:24 +0000 (15:27 +0900)]
Fix bug #0011, which crushes server on repeated Set hint failures.
Old implementation copies ErrorData and calls ereport again, but doesn't
flush error state at all. This sequence causes ErrorData stack overflow
and PostgreSQL panics in such situation.
Shigeru HANADA [Mon, 27 Aug 2012 06:26:12 +0000 (15:26 +0900)]
Fix expected results for test group G.
Takashi Suzuki [Mon, 27 Aug 2012 05:53:07 +0000 (14:53 +0900)]
GUCパラメータの種別と権限に関する試験(G-2-2-*)を追加した。
Mitsuru Hasegawa [Fri, 24 Aug 2012 12:48:24 +0000 (21:48 +0900)]
A-11-1-4,5 A-12-4:-*の試験を追加した。
Mitsuru Hasegawa [Fri, 24 Aug 2012 11:36:42 +0000 (20:36 +0900)]
A-10-*の試験を追加した。
Mitsuru Hasegawa [Fri, 24 Aug 2012 11:32:11 +0000 (20:32 +0900)]
使用上の注意と制約章を最新の状態に更新した。
Takashi Suzuki [Fri, 24 Aug 2012 09:16:01 +0000 (18:16 +0900)]
Merge branch 'ut_suzuki' of git://moomin/pg_hint_plan into ut_suzuki
Takashi Suzuki [Fri, 24 Aug 2012 09:10:15 +0000 (18:10 +0900)]
Leadingヒントのデバッグログ出力試験(L-3-5-*)を追加した。
Takashi Suzuki [Fri, 24 Aug 2012 08:33:16 +0000 (17:33 +0900)]
Leadingヒントの重複に関する試験(L-3-4-*)を追加した。
Takashi Suzuki [Fri, 24 Aug 2012 08:20:27 +0000 (17:20 +0900)]
結合順序ヒントの対象を親同士や子同士とする試験(L-3-3-*)を追加した。
Takashi Suzuki [Fri, 24 Aug 2012 07:47:26 +0000 (16:47 +0900)]
ヒントを無効にするGUCパラメータに関する試験(L-3-2-*)を追加した。
Takashi Suzuki [Fri, 24 Aug 2012 04:53:28 +0000 (13:53 +0900)]
テーブルの結合順序を指定する試験(L-3-1-*)を追加した。
Takashi Suzuki [Fri, 24 Aug 2012 04:10:51 +0000 (13:10 +0900)]
複数の結合方式に同じテーブル名を指定する試験(J-3-3-*)を追加した。