OSDN Git Service
Takashi Suzuki [Fri, 11 Jan 2013 07:11:11 +0000 (16:11 +0900)]
全てのヒント方式に共通するパース処理を1つの関数にまとめた。
Takashi Suzuki [Wed, 9 Jan 2013 08:03:08 +0000 (17:03 +0900)]
エラーメッセージのクリーンアップに伴って使用しなくなった変数を削除した。
パース処理時にワードを切り出す関数parse_quote_valueの引数type_value
を削除した。
Takashi Suzuki [Wed, 9 Jan 2013 07:53:43 +0000 (16:53 +0900)]
PG本体に合わせてエラーメッセージを修正した。
elogのメッセージの先頭を小文字にした。
パース処理するときの文字列の字数制限に関するメッセージをPG本体に合
わせた。
Shigeru Hanada [Fri, 21 Dec 2012 02:42:20 +0000 (11:42 +0900)]
使用例セクションを追加しヒントグループごとにSQL文を記述
レビュー管理表No.9
Shigeru Hanada [Fri, 21 Dec 2012 01:32:23 +0000 (10:32 +0900)]
章構成をpg_dbms_statsに合わせた
レビュー管理表No.7
Shigeru Hanada [Wed, 19 Dec 2012 02:52:54 +0000 (11:52 +0900)]
ECPGの動的SQLの記述をSQLDAを使う場合と区別できる記述にした。
レビュー管理表No.3
Shigeru Hanada [Tue, 18 Dec 2012 03:51:45 +0000 (12:51 +0900)]
動作環境に9.2を追加
レビュー管理表No.8
Shigeru Hanada [Tue, 18 Dec 2012 03:50:08 +0000 (12:50 +0900)]
制約事項が多くなったのでグループに分割
併せて用語の統一も行った。
- VIEW、RULE→ビュー、ルール
- エイリアス→別名
レビュー管理表No.6
Shigeru Hanada [Tue, 18 Dec 2012 02:29:47 +0000 (11:29 +0900)]
<a>タグ内のパラメータ名記述忘れを修正
他の箇所と合わせて、リンクではなく通常の文字列とした。
また、message_levelという古いパラメータ名が残っていたので併せて修正した。
レビュー管理表No.5
Shigeru Hanada [Tue, 18 Dec 2012 02:24:16 +0000 (11:24 +0900)]
「クエリに明記されていないテーブルへのヒント適用」に例を追加
文章だけでは分かりづらい内容なので、具体的なクエリを挙げて説明した。
レビュー管理表No.4
Shigeru Hanada [Tue, 18 Dec 2012 01:18:36 +0000 (10:18 +0900)]
文章とEXPALIN例でヒント種別か異なっていたので修正
レビュー管理表No.2
Shigeru Hanada [Tue, 18 Dec 2012 00:59:04 +0000 (09:59 +0900)]
表記ゆれを統一(ダブルクォート→二重引用符)
レビュー管理表No.1
Takashi Suzuki [Tue, 11 Dec 2012 08:59:28 +0000 (17:59 +0900)]
core-9.2.c に余分な改行や改行不足を解消した。
Takashi Suzuki [Tue, 11 Dec 2012 08:32:14 +0000 (17:32 +0900)]
流用もとのファイルと当該ファイルでコピーライトが異なっていたため、一致させた。
Shigeru Hanada [Mon, 10 Dec 2012 09:46:12 +0000 (18:46 +0900)]
Merge branch 'master' into translate_comments
Takashi Suzuki [Fri, 7 Dec 2012 07:42:18 +0000 (16:42 +0900)]
実行していたクエリが試験の目的に沿っていなかったため、修正した。
Takashi Suzuki [Fri, 7 Dec 2012 07:26:43 +0000 (16:26 +0900)]
外部テーブルをヒント対象にしたときの各ヒント方式の試験を追加した。
既存の試験ファイル(fdw.source)を機能試験用のファイルに変更し、外部テ
ーブルを対象とする各ヒントの機能試験をこのファイルにまとめた。
Takashi Suzuki [Fri, 7 Dec 2012 06:50:17 +0000 (15:50 +0900)]
リグレッションテストのリファクタリングを実施した。
- 試験番号のずれを修正した。
- 余分なクエリを削除した。
- 試験の目的に合わせてクエリを修正した。
Takashi Suzuki [Thu, 6 Dec 2012 08:04:02 +0000 (17:04 +0900)]
CREATE TABLE AS EXECUTE の試験を【機能に依存しない】試験ファイル内に移動した。
Takashi Suzuki [Thu, 6 Dec 2012 06:31:09 +0000 (15:31 +0900)]
IndexOnlyScanヒントの試験を【スキャン方式】試験ファイル内に移動した。
Takashi Suzuki [Thu, 6 Dec 2012 06:01:55 +0000 (15:01 +0900)]
プランナを再帰的に呼び出す場合の試験を【機能に依存しない】試験のファイル内に移動した。
プランナを再帰的に呼び出す場合の試験(A-13-*-*)を追加試験として別フ
ァイルに分けていたが、試験の整理にあたり、機能試験として同じファイ
ルにまとめた。
Takashi Suzuki [Wed, 28 Nov 2012 08:15:42 +0000 (17:15 +0900)]
PREPARE/EXECUTEの試験で、ジェネリックプランを使うように修正した。
Shigeru Hanada [Tue, 27 Nov 2012 08:27:09 +0000 (17:27 +0900)]
Translate comments into English.
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バイトに切り詰めた上で使用するように修正した。