pgpool2.git / summary / log / commit / refs
commit d76db435e98e863b68a8c8c114a951ed3d5f9749
Author: pengbo <pengbo@sraoss.co.jp>
Date: Mon Jul 10 07:19:07 2017 +0000
Add 3.6.5 - 3.2.21 release-notes.
doc.ja/src/sgml/release-3.2.sgml | 70 +++++++++++
doc.ja/src/sgml/release-3.3.sgml | 70 +++++++++++
doc.ja/src/sgml/release-3.4.sgml | 100 ++++++++++++++-
doc.ja/src/sgml/release-3.5.sgml | 218 +++++++++++++++++++++++++++++++-
doc.ja/src/sgml/release-3.6.sgml | 260 +++++++++++++++++++++++++++++++++++++-
doc/src/sgml/release-3.2.sgml | 72 +++++++++++
doc/src/sgml/release-3.3.sgml | 71 +++++++++++
doc/src/sgml/release-3.4.sgml | 100 +++++++++++++++
doc/src/sgml/release-3.5.sgml | 226 +++++++++++++++++++++++++++++++++
doc/src/sgml/release-3.6.sgml | 261 +++++++++++++++++++++++++++++++++++++++
10 files changed, 1443 insertions(+), 5 deletions(-)
diff --git a/doc.ja/src/sgml/release-3.2.sgml b/doc.ja/src/sgml/release-3.2.sgml
index ec65d8d74..608023e5b 100644
--- a/doc.ja/src/sgml/release-3.2.sgml
+++ b/doc.ja/src/sgml/release-3.2.sgml
@@ -1,6 +1,76 @@
<!-- doc/src/sgml/release-3.2.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-2-21">
+ <title>リリース 3.2.21</title>
+
+ <note>
+ <title>リリース日</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>不具合修正</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-06-24 [242e87a]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink> によって報告されたデーモンモードでの相対パスの問題を修正しました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [11b0808]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10の変更に合わせて以下の関数名を修正しました。(Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [69f486f]
+ -->
+ <para>
+ <productname>node.js</productname>を使用する場合に発生するクエリキャッシュのハングアップの問題を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-29 [487bf5e]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10のストリーミングレプリケーションの遅延チェックに関する変更に合わせて修正しました。(Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [378f61d]
+ -->
+ <para>
+ クエリキャッシュのメモリリークを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ oidがないクエリ(<command>BEGIN</command>、<command>CHECKPOINT</command>、<command>VACUUM</command>など)の場合キャッシュバッファがクリアされるべきでしたが、されていませんでした。
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-2-20">
<title>リリース 3.2.20</title>
diff --git a/doc.ja/src/sgml/release-3.3.sgml b/doc.ja/src/sgml/release-3.3.sgml
index 59a193812..5dfb0087d 100644
--- a/doc.ja/src/sgml/release-3.3.sgml
+++ b/doc.ja/src/sgml/release-3.3.sgml
@@ -1,6 +1,76 @@
<!-- doc/src/sgml/release-3.3.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-3-16">
+ <title>リリース 3.3.16</title>
+
+ <note>
+ <title>リリース日</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>不具合修正</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-06-24 [1f9e532]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink> によって報告されたデーモンモードでの相対パスの問題を修正しました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [7b52511]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10の変更に合わせて以下の関数名を修正しました。(Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [906f9af]
+ -->
+ <para>
+ <productname>node.js</productname>を使用する場合に発生するクエリキャッシュのハングアップの問題を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-29 [d740659]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10のストリーミングレプリケーションの遅延チェックに関する変更に合わせて修正しました。(Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [466dc92]
+ -->
+ <para>
+ クエリキャッシュのメモリリークを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ oidがないクエリ(<command>BEGIN</command>、<command>CHECKPOINT</command>、<command>VACUUM</command>など)の場合キャッシュバッファがクリアされるべきでしたが、されていませんでした。
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-3-15">
<title>リリース 3.3.15</title>
diff --git a/doc.ja/src/sgml/release-3.4.sgml b/doc.ja/src/sgml/release-3.4.sgml
index cc9f3d92c..84f7430c9 100644
--- a/doc.ja/src/sgml/release-3.4.sgml
+++ b/doc.ja/src/sgml/release-3.4.sgml
@@ -1,6 +1,104 @@
<!-- doc/src/sgml/release-3.4.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-4-12">
+ <title>リリース 3.4.12</title>
+
+ <note>
+ <title>リリース日</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>不具合修正</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-06-29 [0a1b675]
+ -->
+ <para>
+ <productname>PostgreSQL</productname>の<productname>MemoryManager API</productname>に関する最新の変更をインポートしました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-21 [8991f6e]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink> によって報告されたデーモンモードでの相対パスの問題を修正しました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [7b90252]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10の変更に合わせて以下の関数名を修正しました。(Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [4d2281e]
+ -->
+ <para>
+ <productname>node.js</productname>を使用する場合に発生するクエリキャッシュのハングアップの問題を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-28 [d313520]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10のストリーミングレプリケーションの遅延チェックに関する変更に合わせて修正しました。(Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [b755fd4]
+ -->
+ <para>
+ クエリキャッシュのメモリリークを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ oidがないクエリ(<command>BEGIN</command>、<command>CHECKPOINT</command>、<command>VACUUM</command>など)の場合キャッシュバッファがクリアされるべきでしたが、されていませんでした。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-10 [e4ce880]
+ -->
+ <para>
+ 滅多に発生しない<productname>Pgpool-II</productname>起動時のバグを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ プライマリノードが見つかる前にフェールオーバーの要求が受け入れられる可能性がありました。
+ これにより、<productname>Pgpool-II</productname>は奇妙な状態に陥ります。障害が発生したノードはプライマリノードの場合、
+ プライマリノードは存在しないと判断していました。(既存のスタンバイが昇格し新しいプライマリノードになった場合でも)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002321.html">[pgpool-hackers: 2321]</ulink> をご参照下さい。
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+</sect1>
+
<sect1 id="release-3-4-11">
<title>リリース 3.4.11</title>
@@ -37,7 +135,7 @@
-->
<para>
<ulink url="http://www.sraoss.jp/pipermail/pgpool-general/2017-March/005454.html">[pgpool-general: 5396]</ulink>
- pam ldapが失敗する不具合が修正しました。(Muhammad Usama)
+ pam ldapが失敗する不具合を修正しました。(Muhammad Usama)
</para>
</listitem>
diff --git a/doc.ja/src/sgml/release-3.5.sgml b/doc.ja/src/sgml/release-3.5.sgml
index 8f7215e5a..3ad52fb49 100644
--- a/doc.ja/src/sgml/release-3.5.sgml
+++ b/doc.ja/src/sgml/release-3.5.sgml
@@ -1,6 +1,220 @@
<!-- doc/src/sgml/release-3.5.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-5-9">
+ <title>リリース 3.5.9</title>
+
+ <note>
+ <title>リリース日</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>不具合修正</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-07-07 [d845be6]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002400.html">[pgpool-hackers: 2400]</ulink>で報告された、ログ出力中の不正なバイトを修正しました。(Muhammad Usama)
+ </para>
+ <para>
+ ほとんどログメッセージの修正でした。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-29 [e83a274]
+ -->
+ <para>
+ <productname>PostgreSQL</productname>の<productname>MemoryManager API</productname>に関する最新の変更をインポートしました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-21 [cc0b21d]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink> によって報告されたデーモンモードでの相対パスの問題を修正しました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [d1013ac]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10の変更に合わせて以下の関数名を修正しました。(Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-09 [b86e7b7]
+ -->
+ <para>
+ ストリーミングレプリケーションと拡張プロトコルで発生するハングアップを修正しました。(Yugo Nagata)
+ </para>
+ <para>
+ 以下の例で再現できます。
+
+ <programlisting>
+ - <filename>pgpool.conf</filename>ですべての読み取りクエリをスタンバイに送信するように設定しています。
+ - まず、トランザクションブロックで書き込みクエリを発行します。
+ - トランザクションをコミットした後、<command>SELECT</command>クエリを発行します。
+ - クエリを処理するときに、<command>Parse</command>の直後に<command>Describe(statement)</command>メッセージを送信します。
+ </programlisting>
+ </para>
+
+ <para>
+ <productname>JDBC</productname>を使用せず、<productname>pgproto</productname>を利用し以下のデータでこの問題を再現できます。
+ </para>
+
+ <programlisting>
+ 'Q' "DROP TABLE IF EXISTS test_tbl"
+ 'Y'
+ 'Q' "CREATE TABLE test_tbl(i int)"
+ 'Y'
+ 'Q' "INSERT INTO test_tbl VALUES(1)"
+ 'Y'
+
+ 'P' "" "BEGIN" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "INSERT INTO test_tbl VALUES(1)" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "COMMIT" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "S_1" "SELECT * FROM test_tbl" 0
+ 'D' 'S' "S_1"
+ 'B' "C_1" "S_1" 0 0 0
+ 'E' "C_1" 0
+ 'S'
+ 'Y'
+
+ 'X'
+ </programlisting>
+
+ <para>
+ <command>Bind</command>と<command>Execute</command>を適切なバックエンドに送信するように、<function>parse_before_bind()</function>は、トランザクション中にのみ呼び出されるように修正しました。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [378111d]
+ -->
+ <para>
+ <productname>erlang</productname>アプリケーションを使用する場合、<productname>Pgpool-II</productname> がハングする不具合を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>Erlang</productname>クライアントは "Describe"メッセージの後に "Flush"を送信し、バックエンドは "Row description" を返します。しかし、<productname>Pgpool-II</productname>は、"Row description" メッセージを受信した後、進行中のクエリフラグをリセットすることを忘れてしまい、<productname>Pgpool-II</productname>はバックエンドからの応答を待っていました。これが<productname>erlang</productname>クライアントのハングアップの原因でした。
+
+ </para>
+ <para>
+ <productname>Pgpool-II</productname>が "Row description" メッセージを受信した際に、クエリ処理中のフラグをリセットするように修正しました。"no data" メッセージと同じ扱いにする必要がありました。
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-June/005613.html">[pgpo ol-general: 5555]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [cfcb85e]
+ -->
+ <para>
+ 間違ったターゲットノードにバインドメッセージを送信するバグを修正しました。 <ulink url="http://www.pgpool.net/mantisbt/view.php?id=306">(bug 306)</ulink> (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [ba69889]
+ -->
+ <para>
+ <productname>node.js</productname>を使用する場合に発生するクエリキャッシュのハングアップの問題を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-28 [9de196b]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10のストリーミングレプリケーションの遅延チェックに関する変更に合わせて修正しました。(Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [52769db]
+ -->
+ <para>
+ クエリキャッシュのメモリリークを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ oidがないクエリ(<command>BEGIN</command>、<command>CHECKPOINT</command>、<command>VACUUM</command>など)の場合キャッシュバッファがクリアされるべきでしたが、されていませんでした。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-23 [27a516a]
+ -->
+ <para>
+ 特定の場合に発生する拡張クエリのハングアップを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>erlang</productname> PostgreSQL APIは<command>Parse ('P')</command>、<command>Describe ('D')</command>、<command>Flush ('H')</command>、<command>Bind (B)</command>、<command>Execute('E')</command>を生成します。この"H"は<productname>JDBC</productname>にはありませんので、今まで問題が起こらなかったと思われます。その後、<productname>Pgpool-II</productname>は拡張クエリモードを削除し、データを読み取るバックエンドを見つけることができませんでした。したがって、<productname>Pgpool-II</productname>はバックエンドの一部にメッセージを送信していない可能性があるため、ハングアップを引き起こすすべてのバックエンドを読み取ろうとします。
+ </para>
+ <para>
+ この問題を避けるために、<command>Flush</command>メッセージを受信後拡張クエリフラグを設定するように修正しました。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-10 [7b2ef18]
+ -->
+ <para>
+ 滅多に発生しない<productname>Pgpool-II</productname>起動時のバグを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ プライマリノードが見つかる前にフェールオーバーの要求が受け入れられる可能性がありました。
+ これにより、<productname>Pgpool-II</productname>は奇妙な状態に陥ります。障害が発生したノードはプライマリノードの場合、
+ プライマリノードは存在しないと判断していました。(既存のスタンバイが昇格し新しいプライマリノードになった場合でも)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002321.html">[pgpool-hackers: 2321]</ulink> をご参照下さい。
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-5-8">
<title>リリース 3.5.8</title>
@@ -140,7 +354,7 @@
2017-04-05 [436f7a7]
-->
<para>
- ログメッセージをバインドする前にdebug1に解析をダウングレードしました。(Tatsuo Ishii)
+ <function>parse_before_bind()</function> のログメッセージを debug1 にダウングレードしました。(Tatsuo Ishii)
</para>
</listitem>
@@ -161,7 +375,7 @@
-->
<para>
<ulink url="http://www.sraoss.jp/pipermail/pgpool-general/2017-March/005454.html">[pgpool-general: 5396]</ulink>
- pam ldapが失敗する不具合が修正しました。(Muhammad Usama)
+ pam ldapが失敗する不具合を修正しました。(Muhammad Usama)
</para>
</listitem>
diff --git a/doc.ja/src/sgml/release-3.6.sgml b/doc.ja/src/sgml/release-3.6.sgml
index 908821f23..b64c155d0 100644
--- a/doc.ja/src/sgml/release-3.6.sgml
+++ b/doc.ja/src/sgml/release-3.6.sgml
@@ -1,6 +1,262 @@
<!-- doc/src/sgml/release-3.6.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-6-5">
+ <title>リリース 3.6.5</title>
+
+ <note>
+ <title>リリース日</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>不具合修正</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <!--
+ 2017-07-07 [33fd84c]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002400.html">[pgpool-hackers: 2400]</ulink>で報告された、ログ出力中の不正なバイトを修正しました。(Muhammad Usama)
+ </para>
+ <para>
+ ほとんどログメッセージの修正でした。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-29 [85392b8]
+ -->
+ <para>
+ <productname>PostgreSQL</productname>の<productname>MemoryManager API</productname>に関する最新の変更をインポートしました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-24 [2ad4abd]
+ -->
+ <para>
+ スプリットブレインが発生した場合、間違ったノードが MASTER になってしまう不具合を修正しました。
+ <ulink url="http://www.pgpool.net/mantisbt/view.php?id=306">(bug 306)</ulink> (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-21 [045e516]
+ -->
+ <para>
+ <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink> によって報告されたデーモンモードでの相対パスの問題を修正しました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [16db1f1]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10の変更に合わせて以下の関数名を修正しました。(Tatsuo Ishii)
+ </para>
+
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-09 [d9b0b83]
+ -->
+ <para>
+ ストリーミングレプリケーションと拡張プロトコルで発生するハングアップを修正しました。(Yugo Nagata)
+ </para>
+ <para>
+ 以下の例で再現できます。
+
+ <programlisting>
+ - <filename>pgpool.conf</filename>ですべての読み取りクエリをスタンバイに送信するように設定しています。
+ - まず、トランザクションブロックで書き込みクエリを発行します。
+ - トランザクションをコミットした後、<command>SELECT</command>クエリを発行します。
+ - クエリを処理するときに、<command>Parse</command>の直後に<command>Describe(statement)</command>メッセージを送信します。
+ </programlisting>
+ </para>
+
+ <para>
+ <productname>JDBC</productname>を使用せず、<productname>pgproto</productname>を利用し以下のデータでこの問題を再現できます。
+ <programlisting>
+
+ 'Q' "DROP TABLE IF EXISTS test_tbl"
+ 'Y'
+ 'Q' "CREATE TABLE test_tbl(i int)"
+ 'Y'
+ 'Q' "INSERT INTO test_tbl VALUES(1)"
+ 'Y'
+
+ 'P' "" "BEGIN" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "INSERT INTO test_tbl VALUES(1)" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "COMMIT" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "S_1" "SELECT * FROM test_tbl" 0
+ 'D' 'S' "S_1"
+ 'B' "C_1" "S_1" 0 0 0
+ 'E' "C_1" 0
+ 'S'
+ 'Y'
+
+ 'X'
+ </programlisting>
+
+ </para>
+ <para>
+ <command>Bind</command>と<command>Execute</command>を適切なバックエンドに送信するように、<function>parse_before_bind()</function>は、トランザクション中にのみ呼び出されるように修正しました。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [204b08e]
+ -->
+ <para>
+ <productname>erlang</productname>アプリケーションを使用する場合、<productname>Pgpool-II</productname> がハングする不具合を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>Erlang</productname>クライアントは "Describe"メッセージの後に "Flush"を送信し、バックエンドは "Row description" を返します。しかし、<productname>Pgpool-II</productname>は、"Row description" メッセージを受信した後、進行中のクエリフラグをリセットすることを忘れてしまい、<productname>Pgpool-II</productname>はバックエンドからの応答を待っていました。これが<productname>erlang</productname>クライアントのハングアップの原因でした。
+
+ </para>
+ <para>
+ <productname>Pgpool-II</productname>が "Row description" メッセージを受信した際に、クエリ処理中のフラグをリセットするように修正しました。"no data" メッセージと同じ扱いにする必要がありました。
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-June/005613.html">[pgpo ol-general: 5555]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [e310167]
+ -->
+ <para>
+ 間違ったターゲットノードにバインドメッセージを送信するバグを修正しました。 <ulink url="http://www.pgpool.net/mantisbt/view.php?id=306">(bug 306)</ulink> (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [bc84c0b]
+ -->
+ <para>
+ <productname>node.js</productname>を使用する場合に発生するクエリキャッシュのハングアップの問題を修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-28 [6e6b022]
+ -->
+ <para>
+ <productname>PostgreSQL</productname> 10のストリーミングレプリケーションの遅延チェックに関する変更に合わせて修正しました。(Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [e4f37e4]
+ -->
+ <para>
+ クエリキャッシュのメモリリークを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ oidがないクエリ(<command>BEGIN</command>、<command>CHECKPOINT</command>、<command>VACUUM</command>など)の場合キャッシュバッファがクリアされるべきでしたが、されていませんでした。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-23 [f1b8877]
+ -->
+ <para>
+ 特定の場合に発生する拡張クエリのハングアップを修正しました。(Tatsuo Ishii)
+ </para>
+
+ <para>
+ <productname>erlang</productname> PostgreSQL APIは<command>Parse ('P')</command>、<command>Describe ('D')</command>、<command>Flush ('H')</command>、<command>Bind (B)</command>、<command>Execute('E')</command>を生成します。この"H"は<productname>JDBC</productname>にはありませんので、今まで問題が起こらなかったと思われます。その後、<productname>Pgpool-II</productname>は拡張クエリモードを削除し、データを読み取るバックエンドを見つけることができませんでした。したがって、<productname>Pgpool-II</productname>はバックエンドの一部にメッセージを送信していない可能性があるため、ハングアップを引き起こすすべてのバックエンドを読み取ろうとします。
+ </para>
+ <para>
+ この問題を避けるために、<command>Flush</command>メッセージを受信後拡張クエリフラグを設定するように修正しました。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-23 [512fbae]
+ -->
+ <para>
+ <ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002354.html">[pgpool-hackers: 2354]</ulink>によって報告された<command>pg_md5</command> のセグメンテーション違反を修正しました。(Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [02ad737]
+ 2017-05-17 [6fe79be]
+ -->
+ <para>
+ <function>white/black_memcache_table_list</function>のドキュメントを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ 実際の実装と異なっています。
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.sraoss.jp/pipermail/pgpool-general/2017-May/005537.html">[pgpool-general:5479]</ulink>を参照してください。
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-10 [c901024]
+ -->
+ <para>
+ 滅多に発生しない<productname>Pgpool-II</productname>起動時のバグを修正しました。(Tatsuo Ishii)
+ </para>
+ <para>
+ プライマリノードが見つかる前にフェールオーバーの要求が受け入れられる可能性がありました。
+ これにより、<productname>Pgpool-II</productname>は奇妙な状態に陥ります。障害が発生したノードはプライマリノードの場合、
+ プライマリノードは存在しないと判断していました。(既存のスタンバイが昇格し新しいプライマリノードになった場合でも)
+ </para>
+ <para>
+ 詳細は<ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002321.html">[pgpool-hackers: 2321]</ulink> をご参照下さい。
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+
+</sect1>
+
+
<sect1 id="release-3-6-4">
<title>リリース 3.6.4</title>
@@ -234,7 +490,7 @@
2017-04-05 [e5541d7]
-->
<para>
- ログメッセージをバインドする前にdebug1に解析をダウングレードしました。(Tatsuo Ishii)
+ <function>parse_before_bind() </function> のログメッセージを debug1 にダウングレードしました。(Tatsuo Ishii)
</para>
</listitem>
@@ -255,7 +511,7 @@
-->
<para>
<ulink url="http://www.sraoss.jp/pipermail/pgpool-general/2017-March/005454.html">[pgpool-general: 5396]</ulink>
- pam ldapが失敗する不具合が修正しました。(Muhammad Usama)
+ pam ldapが失敗する不具合を修正しました。(Muhammad Usama)
</para>
</listitem>
diff --git a/doc/src/sgml/release-3.2.sgml b/doc/src/sgml/release-3.2.sgml
index c5eedf7c2..f84598b18 100644
--- a/doc/src/sgml/release-3.2.sgml
+++ b/doc/src/sgml/release-3.2.sgml
@@ -1,6 +1,78 @@
<!-- doc/src/sgml/release-3.2.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-2-21">
+ <title>Release 3.2.21</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>Bug fixes</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-06-24 [242e87a]
+ -->
+ <para>
+ Fixing <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink>Problems with the relative paths in daemon mode (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [11b0808]
+ -->
+ <para>
+ Adjust function name change in <productname>PostgreSQL</productname> 10 dev head. (Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [69f486f]
+ -->
+ <para>
+ Fix query cache hang when used by node.js. (Tatsuo Ishii)
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-29 [487bf5e]
+ -->
+ <para>
+ Deal with <productname>PostgreSQL</productname> 10 in streaming replication delay checking. (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [378f61d]
+ -->
+ <para>
+ Fix query cache memory leak. (Tatsuo Ishii)
+ </para>
+ <para>
+ Clearing cache buffers in case of no oid queries (like <command>BEGIN</command>,
+ <command>CHECKPOINT</command>, <command>VACUUM</command>, etc) should have been done, but it did not.
+ Fix query cache memory leak. (Tatsuo Ishii)
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-2-20">
<title>Release 3.2.20</title>
diff --git a/doc/src/sgml/release-3.3.sgml b/doc/src/sgml/release-3.3.sgml
index edbc616eb..df76dbe17 100644
--- a/doc/src/sgml/release-3.3.sgml
+++ b/doc/src/sgml/release-3.3.sgml
@@ -1,6 +1,77 @@
<!-- doc/src/sgml/release-3.3.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-3-16">
+ <title>Release 3.3.16</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>Bug fixes</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-06-24 [1f9e532]
+ -->
+ <para>
+ Fixing <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink>Problems with the relative paths in daemon mode (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [7b52511]
+ -->
+ <para>
+ Adjust function name change in <productname>PostgreSQL</productname> 10 dev head. (Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [906f9af]
+ -->
+ <para>
+ Fix query cache hang when used by node.js. (Tatsuo Ishii)
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-29 [d740659]
+ -->
+ <para>
+ Deal with <productname>PostgreSQL</productname> 10 in streaming replication delay checking. (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [466dc92]
+ -->
+ <para>
+ Fix query cache memory leak. (Tatsuo Ishii)
+ </para>
+ <para>
+ Clearing cache buffers in case of no oid queries (like <command>BEGIN</command>,
+ <command>CHECKPOINT</command>, <command>VACUUM</command>, etc) should have been done, but it did not.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-3-15">
<title>Release 3.3.15</title>
diff --git a/doc/src/sgml/release-3.4.sgml b/doc/src/sgml/release-3.4.sgml
index 8420a3e8d..1dcb19dbd 100644
--- a/doc/src/sgml/release-3.4.sgml
+++ b/doc/src/sgml/release-3.4.sgml
@@ -1,6 +1,106 @@
<!-- doc/src/sgml/release-3.4.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-4-12">
+ <title>Release 3.4.12</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>Bug fixes</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-06-29 [0a1b675]
+ -->
+ <para>
+ Importing the latest changes in the <productname>MemoryManager API</productname> from <productname>PostgreSQL</productname> code. (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-21 [8991f6e]
+ -->
+ <para>
+ Fixing <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink>Problems with the relative paths in daemon mode (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [7b90252]
+ -->
+ <para>
+ Adjust function name change in <productname>PostgreSQL</productname> 10 dev head. (Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [4d2281e]
+ -->
+ <para>
+ Fix query cache hang when used by node.js. (Tatsuo Ishii)
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-28 [d313520]
+ -->
+ <para>
+ Deal with <productname>PostgreSQL</productname> 10 in streaming replication delay checking. (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [b755fd4]
+ -->
+ <para>
+ Fix query cache memory leak. (Tatsuo Ishii)
+ </para>
+ <para>
+ Clearing cache buffers in case of no oid queries (like <command>BEGIN</command>,
+ <command>CHECKPOINT</command>, <command>VACUUM</command>, etc) should have been done, but it did not.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-10 [e4ce880]
+ -->
+ <para>
+ Fix corner case bug in <productname>Pgpool-II</productname> starting up. (Tatsuo Ishii)
+ </para>
+ <para>
+ It is possible that a failover request is accepted before primary node
+ is searched. This leads <productname>Pgpool-II</productname> to a strange state: there's no
+ primary node if the failed node was a primary node (even if new
+ primary node exists as a result of promotion of existing standby).
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002321.html">[pgpool-hackers: 2321]</ulink> for more details.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+</sect1>
+
<sect1 id="release-3-4-11">
<title>Release 3.4.11</title>
diff --git a/doc/src/sgml/release-3.5.sgml b/doc/src/sgml/release-3.5.sgml
index 96016f3bb..c915bcd47 100644
--- a/doc/src/sgml/release-3.5.sgml
+++ b/doc/src/sgml/release-3.5.sgml
@@ -1,6 +1,232 @@
<!-- doc/src/sgml/release-3.5.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-5-9">
+ <title>Release 3.5.9</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>Bug fixes</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-07-07 [d845be6]
+ -->
+ <para>
+ Fix for <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002400.html">[pgpool-hackers: 2400]</ulink> Garbage output (Muhammad Usama)
+ </para>
+ <para>
+ Mostly the log messages fixes and few code cleanups.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-29 [e83a274]
+ -->
+ <para>
+ Importing the latest changes in the <productname>MemoryManager API</productname> from <productname>PostgreSQL</productname> code. (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-21 [cc0b21d]
+ -->
+ <para>
+ Fixing <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink>Problems with the relative paths in daemon mode (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [d1013ac]
+ -->
+ <para>
+ Adjust function name change in <productname>PostgreSQL</productname> 10 dev head. (Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-09 [b86e7b7]
+ -->
+ <para>
+ Fix a posible hang with streaming replication and extended protocol (Yugo Nagata)
+ </para>
+ <para>
+ This hang occured under a certain condition. The following is an example.
+ </para>
+
+ <programlisting>
+ - pgpool.conf is configured so that all read queries are sent to the standby.
+ - First, issue a writing query in a transaction block
+ - After commiting the transaction, issue a select query.
+ - When processing the query, send Describe (statement) message just after Parse.
+ </programlisting>
+
+ <para>
+ Without using <productname>JDBC</productname>, we can reproduce the problem by <productname>pgproto</productname> with the followeing messages.
+ </para>
+
+ <programlisting>
+ 'Q' "DROP TABLE IF EXISTS test_tbl"
+ 'Y'
+ 'Q' "CREATE TABLE test_tbl(i int)"
+ 'Y'
+ 'Q' "INSERT INTO test_tbl VALUES(1)"
+ 'Y'
+
+ 'P' "" "BEGIN" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "INSERT INTO test_tbl VALUES(1)" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "COMMIT" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "S_1" "SELECT * FROM test_tbl" 0
+ 'D' 'S' "S_1"
+ 'B' "C_1" "S_1" 0 0 0
+ 'E' "C_1" 0
+ 'S'
+ 'Y'
+
+ 'X'
+ </programlisting>
+
+ <para>
+ To fix it, <function>parse_before_bind()</function> should be called only if we are in a transaction block so that we can send <command>Bind</command> and <command>Execute</command> to the right backend.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [378111d]
+ -->
+ <para>
+ Fix <productname>Pgpool-II</productname> hang when used by <productname>erlang</productname> applications. (Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>Erlang</productname> client sends "Describe" message followed by "Flush". So the
+ backend returns "Row description." However <productname>Pgpool-II</productname> forgets to reset
+ the query in progress flag upon receiving "Row description" message,
+ then <productname>Pgpool-II</productname> keeps on waiting for response from backend. This is the
+ cause of erlang client hanging.
+ </para>
+ <para>
+ Fix is, just reset the query in progress flag upon receiving "Row
+ description" message. Same thing can be said to "no data" message.
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-June/005613.html">[pgpool-general: 5555]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [cfcb85e]
+ -->
+ <para>
+ Fix bug with sending bind message to wrong target node. (<ulink url="https://www.pgpool.net/mantisbt/view.php?id=314">bug 314</ulink>) (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [ba69889]
+ -->
+ <para>
+ Fix query cache hang when used by node.js. (Tatsuo Ishii)
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-28 [9de196b]
+ -->
+ <para>
+ Deal with <productname>PostgreSQL</productname> 10 in streaming replication delay checking. (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [52769db]
+ -->
+ <para>
+ Fix query cache memory leak. (Tatsuo Ishii)
+ </para>
+ <para>
+ Clearing cache buffers in case of no oid queries (like <command>BEGIN</command>,
+ <command>CHECKPOINT</command>, <command>VACUUM</command>, etc) should have been done, but it did not.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-23 [27a516a]
+ -->
+ <para>
+ Fix extended query hang in certain case. (Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>errlang</productname> PostgreSQL API produces <command>Parse ('P')</command>, <command>Describe ('D')</command>,
+ <command>Flush ('H')</command>, <command>Bind ('B')</command>, and <command>Execute ('E')</command>. Notice the 'H' message (this
+ does not happen in <productname>JDBC</productname>. I suspect that's the reason why this problem
+ is not popular before). After that, <productname>Pgpool-II</productname> dropped the extended
+ query mode, it failed to find which backend to read data. Thus <productname>Pgpool-II</productname> simply tries to read all of backend which causes hang
+ because it may have not send a message to some of backends.
+ </para>
+ <para>
+ Solution is, after receiving the flush message set doing extended query flag.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-10 [7b2ef18]
+ -->
+ <para>
+ Fix corner case bug in <productname>Pgpool-II</productname> starting up. (Tatsuo Ishii)
+ </para>
+ <para>
+ It is possible that a failover request is accepted before primary node
+ is searched. This leads <productname>Pgpool-II</productname> to a strange state: there's no
+ primary node if the failed node was a primary node (even if new
+ primary node exists as a result of promotion of existing standby).
+ </para>
+
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002321.html">[pgpool-hackers: 2321]</ulink> for more details.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-5-8">
<title>Release 3.5.8</title>
diff --git a/doc/src/sgml/release-3.6.sgml b/doc/src/sgml/release-3.6.sgml
index 25d620fec..258424a9d 100644
--- a/doc/src/sgml/release-3.6.sgml
+++ b/doc/src/sgml/release-3.6.sgml
@@ -1,6 +1,267 @@
<!-- doc/src/sgml/release-3.6.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+<sect1 id="release-3-6-5">
+ <title>Release 3.6.5</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2017-07-11</simpara>
+ </note>
+
+ <sect2>
+ <title>Bug fixes</title>
+
+ <itemizedlist>
+ <listitem>
+ <!--
+ 2017-07-07 [33fd84c]
+ -->
+ <para>
+ Fix for <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002400.html">[pgpool-hackers: 2400]</ulink> Garbage output (Muhammad Usama)
+ </para>
+ <para>
+ Mostly the log messages fixes and few code cleanups.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-29 [85392b8]
+ -->
+ <para>
+ Importing the latest changes in the <productname>MemoryManager API</productname> from <productname>PostgreSQL</productname> code. (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-24 [2ad4abd]
+ -->
+ <para>
+ Fixing 0000306: Pgpool steals back MASTER status. <ulink url="http://www.pgpool.net/mantisbt/view.php?id=306">(bug 306)</ulink> (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-21 [045e516]
+ -->
+ <para>
+ Fixing <ulink url="http://www.sraoss.jp/pipermail/pgpool-hackers/2017-June/002390.html">[pgpool-hackers: 2390]</ulink>Problems with the relative paths in daemon mode (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-19 [16db1f1]
+ -->
+ <para>
+ Adjust function name change in <productname>PostgreSQL</productname> 10 dev head. (Tatsuo Ishii)
+ </para>
+ <programlisting>
+ pg_current_wal_location -> pg_current_wal_lsn
+ pg_last_wal_replay_location -> pg_last_wal_replay_lsn
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-09 [d9b0b83]
+ -->
+ <para>
+ Fix a posible hang with streaming replication and extended protocol. (Yugo Nagata)
+ </para>
+
+ <para>
+ This hang occured under a certain condition. The following is an example.
+ </para>
+
+ <programlisting>
+ - pgpool.conf is configured so that all read queries are sent to the standby.
+ - First, issue a writing query in a transaction block
+ - After commiting the transaction, issue a select query.
+ - When processing the query, send Describe (statement) message just after Parse.
+ </programlisting>
+
+ <para>
+ Without using <productname>JDBC</productname>, we can reproduce the problem by <productname>pgproto</productname> with the followeing messages.
+ </para>
+
+ <programlisting>
+ 'Q' "DROP TABLE IF EXISTS test_tbl"
+ 'Y'
+ 'Q' "CREATE TABLE test_tbl(i int)"
+ 'Y'
+ 'Q' "INSERT INTO test_tbl VALUES(1)"
+ 'Y'
+
+ 'P' "" "BEGIN" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "INSERT INTO test_tbl VALUES(1)" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "" "COMMIT" 0
+ 'B' "" "" 0 0 0
+ 'E' "" 0
+ 'S'
+ 'Y'
+
+ 'P' "S_1" "SELECT * FROM test_tbl" 0
+ 'D' 'S' "S_1"
+ 'B' "C_1" "S_1" 0 0 0
+ 'E' "C_1" 0
+ 'S'
+ 'Y'
+
+ 'X'
+ </programlisting>
+
+ <para>
+ To fix it, <function>parse_before_bind()</function> should be called only if we are in a transaction block so that we can send <command>Bind</command> and <command>Execute</command> to the right backend.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [204b08e]
+ -->
+ <para>
+ Fix <productname>Pgpool-II</productname> hang when used by <productname>erlang</productname> applications. (Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>Erlang</productname> client sends "Describe" message followed by "Flush". So the
+ backend returns "Row description." However <productname>Pgpool-II</productname> forgets to reset
+ the query in progress flag upon receiving "Row description" message,
+ then <productname>Pgpool-II</productname> keeps on waiting for response from backend. This is the
+ cause of erlang client hanging.
+ </para>
+ <para>
+ Fix is, just reset the query in progress flag upon receiving "Row
+ description" message. Same thing can be said to "no data" message.
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-June/005613.html">[pgpool-general: 5555]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-06-07 [e310167]
+ -->
+ <para>
+ Fix bug with sending bind message to wrong target node. (<ulink url="https://www.pgpool.net/mantisbt/view.php?id=314">bug 314</ulink>) (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [bc84c0b]
+ -->
+ <para>
+ Fix query cache hang when used by node.js. (Tatsuo Ishii)
+ </para>
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-general/2017-May/005569.html">[pgpool-general: 5511]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-28 [6e6b022]
+ -->
+ <para>
+ Deal with <productname>PostgreSQL</productname> 10 in streaming replication delay checking. (Tatsuo Ishii)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-27 [e4f37e4]
+ -->
+ <para>
+ Fix query cache memory leak. (Tatsuo Ishii)
+ </para>
+ <para>
+ Clearing cache buffers in case of no oid queries (like <command>BEGIN</command>,
+ <command>CHECKPOINT</command>, <command>VACUUM</command>, etc) should have been done, but it did not.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-23 [f1b8877]
+ -->
+ <para>
+ Fix extended query hang in certain case. (Tatsuo Ishii)
+ </para>
+ <para>
+ <productname>errlang</productname> PostgreSQL API produces <command>Parse ('P')</command>, <command>Describe ('D')</command>,
+ <command>Flush ('H')</command>, <command>Bind ('B')</command>, and <command>Execute ('E')</command>. Notice the 'H' message (this
+ does not happen in <productname>JDBC</productname>. I suspect that's the reason why this problem
+ is not popular before). After that, <productname>Pgpool-II</productname> dropped the extended
+ query mode, it failed to find which backend to read data. Thus <productname>Pgpool-II</productname> simply tries to read all of backend which causes hang
+ because it may have not send a message to some of backends.
+ </para>
+ <para>
+ Solution is, after receiving the flush message set doing extended query flag.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-23 [512fbae]
+ -->
+ <para>
+ Fix for <ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002354.html">[pgpool-hackers: 2354]</ulink> segfault with <command>pg_md5</command>. (Muhammad Usama)
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-31 [02ad737]
+ 2017-05-17 [6fe79be]
+ -->
+ <para>
+ Fix descriptions of <function>white/black_memcache_table_list</function>. (Tatsuo Ishii)
+ </para>
+ <para>
+ They are far from actual implementations.
+ </para>
+ <para>
+ See <ulink url="http://www.sraoss.jp/pipermail/pgpool-general/2017-May/005537.html">[pgpool-general: 5479]</ulink> for more details.
+ </para>
+ </listitem>
+
+ <listitem>
+ <!--
+ 2017-05-10 [c901024]
+ -->
+ <para>
+ Fix corner case bug in <productname>Pgpool-II</productname> starting up. (Tatsuo Ishii)
+ </para>
+ <para>
+ It is possible that a failover request is accepted before primary node
+ is searched. This leads <productname>Pgpool-II</productname> to a strange state: there's no
+ primary node if the failed node was a primary node (even if new
+ primary node exists as a result of promotion of existing standby).
+ </para>
+
+ <para>
+ See <ulink url="http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002321.html">[pgpool-hackers: 2321]</ulink> for more details.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+</sect1>
+
<sect1 id="release-3-6-4">
<title>Release 3.6.4</title>
[parent: 2b9d8aca0852]