<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://pgpool.net/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Hoshiai</id>
	<title>pgpool Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://pgpool.net/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Hoshiai"/>
	<link rel="alternate" type="text/html" href="https://pgpool.net/mediawiki/index.php?title=Special:Contributions/Hoshiai"/>
	<updated>2026-05-04T16:39:10Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://pgpool.net/mediawiki/index.php?title=Pgpool-II_4.1_development&amp;diff=2999</id>
		<title>Pgpool-II 4.1 development</title>
		<link rel="alternate" type="text/html" href="https://pgpool.net/mediawiki/index.php?title=Pgpool-II_4.1_development&amp;diff=2999"/>
		<updated>2019-06-24T08:38:24Z</updated>

		<summary type="html">&lt;p&gt;Hoshiai: target date of the auto failback feature is updated&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Last update: 2019/06/24&lt;br /&gt;
&lt;br /&gt;
Each bug items assigned &amp;quot;SL (Severity level)&amp;quot; from 1-3 (1 is the most severe, 3 is the least severe) in &amp;quot;Status&amp;quot; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! &lt;br /&gt;
! ID&lt;br /&gt;
! Registered/start Date&lt;br /&gt;
! Target Date&lt;br /&gt;
! Priority&lt;br /&gt;
! Implementation&lt;br /&gt;
! Person in charge&lt;br /&gt;
! Overview&lt;br /&gt;
! Status&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;001&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Cert authentication between Pgpool-II and PostgreSQL&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 002&lt;br /&gt;
| [FEATURE] Add new child if it goes down&lt;br /&gt;
| 2015/09/03&lt;br /&gt;
| -&lt;br /&gt;
| Low&lt;br /&gt;
| Small&lt;br /&gt;
|&lt;br /&gt;
| pgpool-hackers:1034&lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;003&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Make PCP set configuration command public &amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|- style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;004&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Seamless Application Failover&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;s&amp;gt;Similar to Oracle&#039;s &amp;quot;Transparent Application Failover&amp;quot;.&amp;lt;/s&amp;gt;&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 005&lt;br /&gt;
| [FEATURE] Enhancing pool_process and pool_pools&lt;br /&gt;
| 2018/02/13&lt;br /&gt;
|&lt;br /&gt;
| Low&lt;br /&gt;
| Small&lt;br /&gt;
|&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-February/002721.html [pgpool-hackers: 2721]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;006&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Support more prefix for query routing (similar to NO LOAD BALANCE)&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;s&amp;gt;[http://www.sraoss.jp/pipermail/pgpool-hackers/2018-February/002721.html [pgpool-hackers: 2721]]&amp;lt;/s&amp;gt; &lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 007&lt;br /&gt;
| [FEATURE] shared relation cache&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| 2019/02/29&lt;br /&gt;
| High&lt;br /&gt;
| Large&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003124.html [pgpool-hackers: 3124]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=46917d5458a82c75e98b247a74b7ee1827666159 commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 008&lt;br /&gt;
| [FEATURE] Enhance performance: performance regression test&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Small&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| [FEATURE] Enhance performance: performance for simple query&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| XLarge&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| [FEATURE] Enhance performance: performance for extended query &lt;br /&gt;
| 2019/01/17&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| &lt;br /&gt;
| (1) Enhance performance for COPY XXX TO STDOUT (both for simple and extended query): [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=702f7c86f9b8f82f61e47235505715891ffe1b23 commit] &amp;lt;br&amp;gt; &lt;br /&gt;
(2) Enhance performance for extended query message: &amp;lt;br&amp;gt; [https://www.pgpool.net/pipermail/pgpool-hackers/2019-February/003230.html [pgpool-hackers: 3230]] [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=778f611e201d6df88ed90d01e49af77daf9f2926 commit] &amp;lt;br&amp;gt; (3) Eliminate select(2) calls in certain cases to enhance performance in simple and extended query: &amp;lt;br&amp;gt; [https://www.pgpool.net/pipermail/pgpool-hackers/2019-February/003247.html [pgpool-hackers: 3247]] [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=cf5fe7eb89a11e3ada3833343c7ed6551ce7c662 commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 009&lt;br /&gt;
| [Documentation] Review and improve the current document&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Extra Large&lt;br /&gt;
| Hoshiai&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| [Documentation] Update the examples to latest version.&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=0c9f716714dce156fe74469a933046b39896a072 commit] [http://www.pgpool.net/docs/latest/en/html/example-cluster.html doc]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| [Documentation] Add a &amp;quot;Quik start&amp;quot; guid.&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 010&lt;br /&gt;
| [FEATURE] Master watchdog sets quarantine state to primary node&lt;br /&gt;
| 2018/11/26&lt;br /&gt;
| &lt;br /&gt;
| Normal&lt;br /&gt;
| Small &lt;br /&gt;
| Usama&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-March/002756.html [pgpool-hackers: 2756]] &amp;lt;br&amp;gt;[https://www.pgpool.net/pipermail/pgpool-general-jp/2018-March/001503.html [pgpool-general-jp: 1504]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 011&lt;br /&gt;
| [FEATURE] limiting number of frontends differently&lt;br /&gt;
| 2018/11/26&lt;br /&gt;
| 2018/12/04&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-November/003153.html [pgpool-hackers: 3153]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=693a6284cf2dfc2e60d5a2489c9ee5167defc3dc commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 012 &lt;br /&gt;
| [FEATURE] Don&#039;t load balance after a SELECT having functions specified in black function list&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| 2019/06/30&lt;br /&gt;
| Normal&lt;br /&gt;
| Small&lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003157.html [pgpool-hackers: 3157]]&lt;br /&gt;
| Implementation is done. TODO: Test &amp;amp; Doc.&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 013 &lt;br /&gt;
| [FEATURE] Support for LDAP authentication &lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 014&lt;br /&gt;
| [FEATURE] Support for PostgreSQL 12.&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Small&lt;br /&gt;
| Ishii&lt;br /&gt;
| recovery.conf &amp;lt;br&amp;gt; pgpool_setup &amp;lt;br&amp;gt; pgppol-recovery extension&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=fda13a93a1025b498bb2a674fb49406d9e3e509c pgpool-recovery extension] &amp;lt;br&amp;gt; [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=23fb4c1250f0464a867f2ac69006d74f134213e3 pgpool_setup]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 015&lt;br /&gt;
| [FEATURE] Import PostgreSQL 12 parser.&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| 2019/07/31&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| Start after PostgreSQL beta release.&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 016&lt;br /&gt;
| [FEATURE] Statement level load balancing&lt;br /&gt;
| 2018/12/06&lt;br /&gt;
| 2019/03/31&lt;br /&gt;
| High&lt;br /&gt;
| Large&lt;br /&gt;
| Peng&lt;br /&gt;
|&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=1099ba610eef06a9dab6f89486cc52de55ff3ebb commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 017&lt;br /&gt;
| [FEATURE] Add IPv6 sppport for Pgpool-II&lt;br /&gt;
| 2019/01/17&lt;br /&gt;
| &lt;br /&gt;
| Low&lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 018&lt;br /&gt;
| [FEATURE] Add new columns to &amp;quot;show pool_nodes&amp;quot; command&lt;br /&gt;
| 2019/04/22&lt;br /&gt;
| 2019/04/24&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| Discussion: [https://www.pgpool.net/pipermail/pgpool-hackers/2019-April/003315.html [pgpool-hackers: 3315]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=35cb1dc2d9d9f4887bd0407f150558660b7826e1 Commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 019&lt;br /&gt;
| [FEATURE][Document] Add new performance section&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 020&lt;br /&gt;
| [FEATURE] auto failback&lt;br /&gt;
| 2019/5/23&lt;br /&gt;
| 2019/7/5&lt;br /&gt;
| &lt;br /&gt;
| Medium&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2019-May/003328.html [pgpool-hackers: 3328]]&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 021&lt;br /&gt;
| [FEATURE] allow to use md5 password in health_check_password and sr_check_password&lt;br /&gt;
| 2019/5/30&lt;br /&gt;
| 2019/6/10&lt;br /&gt;
| &lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2019-May/003334.html [pgpool-hackers: 3334]]&lt;br /&gt;
| [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=dc9742678dd04719a08a747d40cd4c0781fce49a commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 022&lt;br /&gt;
| [FEATURE] Routing relcache queries to load balance node&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2019-June/003342.html [pgpool-hackers: 3342]]&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 023&lt;br /&gt;
| [FEATURE] Support ECDH key exchange with SSL&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Medium&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| &lt;br /&gt;
| [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=51bc494aaa7fd191e14038204d18effe2efb0ec8 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 101&lt;br /&gt;
| 0000433: IN (SELECT ...) can not be rewritten in native replication mode&lt;br /&gt;
| 2018/10/19&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [http://www.pgpool.net/mantisbt/view.php?id=433 bug433]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=d53292592a9808b260171f8569752ca89d7412fc commit] &amp;lt;br&amp;gt;Regression test should be added.&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 102&lt;br /&gt;
| 0000434: Segmentation fault due to a query error and Sync messages in native replication mode&lt;br /&gt;
| 2018/10/19&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=434 bug434]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=5e6d598b964ac88f41a18280f6289ca5e78ffad5 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 103&lt;br /&gt;
| pool_passwd is corrupted.&lt;br /&gt;
| 2018/10/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai, Usama&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-October/003081.html [pgpool-hackers: 3081]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=d48cc28a7b2ac42185b48873608ff876f9298d89 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 104&lt;br /&gt;
| [pgpool-hackers: 3025] Compile warns&lt;br /&gt;
| 2018/10/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-August/003025.html [pgpool-hackers: 3025]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=bc9119f61b187577d64b63ebffb6f5412202f24f commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 105&lt;br /&gt;
| 0000443: Segmentation fault occurs when a certain Bind message is sent in native replication mode.&lt;br /&gt;
| 2018/11/08&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=443 bug443]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=1d8d03237a2ad507f8f1fb8fb0c84b3084f57cdc commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 106&lt;br /&gt;
| 0000444: pgpool does not take into account parameters order in startup packet&lt;br /&gt;
| 2018/11/13&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=444 bug444]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=ffb998517bb91c512b77fbe1ca8ee331e492f131 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 107&lt;br /&gt;
| 0000448: pgpool holds the connections as idle_in_transaction which are timed out due to idle_in_transaction setting on backend nodes&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=448 bug448]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=3f5986eee360f12e6a0bb77aa46f95abf5f6bc10 cimmit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 108&lt;br /&gt;
| [pgpool-general: 6351] kind mismatch among backends, savepoint with psqlodbc&lt;br /&gt;
| 2018/12/26&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-general/2018-December/006409.html [pgpool-general: 6351]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 109&lt;br /&gt;
| 0000455: watchdog lifecheck process has segfalut in query mode&lt;br /&gt;
| 2019/01/21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| https://www.pgpool.net/mantisbt/view.php?id=455&lt;br /&gt;
| Done. https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=4cde5da1b416d909d102cfe6878c0cd5189caf86&lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 110&lt;br /&gt;
| Add regression test for query mode &lt;br /&gt;
| 2019/01/21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 111&lt;br /&gt;
| 0000483: online-recovery is blocked after a child process exits abnormally with replication mode and watchdog&lt;br /&gt;
| 2019/04/04 &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=483 bug483]&lt;br /&gt;
| Waiting for review-&amp;gt;the patch did not work.&lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 112&lt;br /&gt;
| Fix memory leak related to watchdog and auth pointed out by coverity&lt;br /&gt;
| 2019/05/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| Usama&lt;br /&gt;
| src/auth/pool_hba.c src/auth/pool_auth.c src/auth/auth-scram.c src/watchdog/watchdog.c src/watchdog/wd_lifecheck.c src/config/pool_config_variable.c&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 113&lt;br /&gt;
| Fix memory leak related to watchdog and auth pointed out by coverity&lt;br /&gt;
| 2019/05/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ishii&lt;br /&gt;
| other than :src/auth/pool_hba.c src/auth/pool_auth.c src/auth/auth-scram.c src/watchdog/watchdog.c src/watchdog/wd_lifecheck.c src/config/pool_config_variable.c&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 201&lt;br /&gt;
| Feature Agreement &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 202&lt;br /&gt;
| Feature Freeze &lt;br /&gt;
| &lt;br /&gt;
| 2019/05/31&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 202&lt;br /&gt;
| Code Freeze &lt;br /&gt;
| &lt;br /&gt;
| 2019/06/30&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hoshiai</name></author>
	</entry>
	<entry>
		<id>https://pgpool.net/mediawiki/index.php?title=Pgpool-II_4.1_development&amp;diff=2981</id>
		<title>Pgpool-II 4.1 development</title>
		<link rel="alternate" type="text/html" href="https://pgpool.net/mediawiki/index.php?title=Pgpool-II_4.1_development&amp;diff=2981"/>
		<updated>2019-05-23T02:48:26Z</updated>

		<summary type="html">&lt;p&gt;Hoshiai: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Last update: 2019/05/22&lt;br /&gt;
&lt;br /&gt;
Each bug items assigned &amp;quot;SL (Severity level)&amp;quot; from 1-3 (1 is the most severe, 3 is the least severe) in &amp;quot;Status&amp;quot; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! &lt;br /&gt;
! ID&lt;br /&gt;
! Registered/start Date&lt;br /&gt;
! Target Date&lt;br /&gt;
! Priority&lt;br /&gt;
! Implementation&lt;br /&gt;
! Person in charge&lt;br /&gt;
! Overview&lt;br /&gt;
! Status&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;001&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Cert authentication between Pgpool-II and PostgreSQL&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 002&lt;br /&gt;
| [FEATURE] Add new child if it goes down&lt;br /&gt;
| 2015/09/03&lt;br /&gt;
| -&lt;br /&gt;
| Low&lt;br /&gt;
| Small&lt;br /&gt;
|&lt;br /&gt;
| pgpool-hackers:1034&lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;003&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Make PCP set configuration command public &amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|- style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;004&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Seamless Application Failover&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;s&amp;gt;Similar to Oracle&#039;s &amp;quot;Transparent Application Failover&amp;quot;.&amp;lt;/s&amp;gt;&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 005&lt;br /&gt;
| [FEATURE] Enhancing pool_process and pool_pools&lt;br /&gt;
| 2018/02/13&lt;br /&gt;
|&lt;br /&gt;
| Low&lt;br /&gt;
| Small&lt;br /&gt;
|&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-February/002721.html [pgpool-hackers: 2721]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;006&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Support more prefix for query routing (similar to NO LOAD BALANCE)&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;s&amp;gt;[http://www.sraoss.jp/pipermail/pgpool-hackers/2018-February/002721.html [pgpool-hackers: 2721]]&amp;lt;/s&amp;gt; &lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 007&lt;br /&gt;
| [FEATURE] shared relation cache&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| 2019/02/29&lt;br /&gt;
| High&lt;br /&gt;
| Large&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003124.html [pgpool-hackers: 3124]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=46917d5458a82c75e98b247a74b7ee1827666159 commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 008&lt;br /&gt;
| [FEATURE] Enhance performance: performance regression test&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Small&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| [FEATURE] Enhance performance: performance for simple query&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| XLarge&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| [FEATURE] Enhance performance: performance for extended query &lt;br /&gt;
| 2019/01/17&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| &lt;br /&gt;
| (1) Enhance performance for COPY XXX TO STDOUT (both for simple and extended query): [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=702f7c86f9b8f82f61e47235505715891ffe1b23 commit] &amp;lt;br&amp;gt; &lt;br /&gt;
(2) Enhance performance for extended query message: &amp;lt;br&amp;gt; [https://www.pgpool.net/pipermail/pgpool-hackers/2019-February/003230.html [pgpool-hackers: 3230]] [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=778f611e201d6df88ed90d01e49af77daf9f2926 commit] &amp;lt;br&amp;gt; (3) Eliminate select(2) calls in certain cases to enhance performance in simple and extended query: &amp;lt;br&amp;gt; [https://www.pgpool.net/pipermail/pgpool-hackers/2019-February/003247.html [pgpool-hackers: 3247]] [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=cf5fe7eb89a11e3ada3833343c7ed6551ce7c662 commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 009&lt;br /&gt;
| [Documentation] Review and improve the current document&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Extra Large&lt;br /&gt;
| Hoshiai&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| [Documentation] Update the examples to latest version.&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=0c9f716714dce156fe74469a933046b39896a072 commit] [http://www.pgpool.net/docs/latest/en/html/example-cluster.html doc]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| [Documentation] Add a &amp;quot;Quik start&amp;quot; guid.&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 010&lt;br /&gt;
| [FEATURE] Master watchdog sets quarantine state to primary node&lt;br /&gt;
| 2018/11/26&lt;br /&gt;
| &lt;br /&gt;
| Normal&lt;br /&gt;
| Small &lt;br /&gt;
| Usama&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-March/002756.html [pgpool-hackers: 2756]] &amp;lt;br&amp;gt;[https://www.pgpool.net/pipermail/pgpool-general-jp/2018-March/001503.html [pgpool-general-jp: 1504]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 011&lt;br /&gt;
| [FEATURE] limiting number of frontends differently&lt;br /&gt;
| 2018/11/26&lt;br /&gt;
| 2018/12/04&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-November/003153.html [pgpool-hackers: 3153]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=693a6284cf2dfc2e60d5a2489c9ee5167defc3dc commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 012 &lt;br /&gt;
| [FEATURE] Don&#039;t load balance after a SELECT having functions specified in black function list and queries specified in black_query_pattern_list&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| Normal&lt;br /&gt;
| Small&lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003157.html [pgpool-hackers: 3157]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 013 &lt;br /&gt;
| [FEATURE] Support for LDAP authentication &lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 014&lt;br /&gt;
| [FEATURE] Support for PostgreSQL 12.&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Small&lt;br /&gt;
| Ishii&lt;br /&gt;
| recovery.conf &amp;lt;br&amp;gt; pgpool_setup &amp;lt;br&amp;gt; pgppol-recovery extension&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=fda13a93a1025b498bb2a674fb49406d9e3e509c pgpool-recovery extension] &amp;lt;br&amp;gt; [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=23fb4c1250f0464a867f2ac69006d74f134213e3 pgpool_setup]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 015&lt;br /&gt;
| [FEATURE] Import PostgreSQL 12 parser.&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| Start after PostgreSQL beta release.&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 016&lt;br /&gt;
| [FEATURE] Statement level load balancing&lt;br /&gt;
| 2018/12/06&lt;br /&gt;
| 2019/03/31&lt;br /&gt;
| High&lt;br /&gt;
| Large&lt;br /&gt;
| Peng&lt;br /&gt;
|&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=1099ba610eef06a9dab6f89486cc52de55ff3ebb commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 017&lt;br /&gt;
| [FEATURE] Add IPv6 sppport for Pgpool-II&lt;br /&gt;
| 2019/01/17&lt;br /&gt;
| &lt;br /&gt;
| Low&lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 018&lt;br /&gt;
| [FEATURE] Add new columns to &amp;quot;show pool_nodes&amp;quot; command&lt;br /&gt;
| 2019/04/22&lt;br /&gt;
| 2019/05/15&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| Discussion: [https://www.pgpool.net/pipermail/pgpool-hackers/2019-April/003315.html [pgpool-hackers: 3315]]&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 019&lt;br /&gt;
| [FEATURE][Document] Add new performance section&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 020&lt;br /&gt;
| [FEATURE] auto failback&lt;br /&gt;
| 2019/5/23&lt;br /&gt;
| 2019/5/31&lt;br /&gt;
| &lt;br /&gt;
| Medium&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2019-May/003328.html [pgpool-hackers: 3328]]&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 101&lt;br /&gt;
| 0000433: IN (SELECT ...) can not be rewritten in native replication mode&lt;br /&gt;
| 2018/10/19&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [http://www.pgpool.net/mantisbt/view.php?id=433 bug433]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=d53292592a9808b260171f8569752ca89d7412fc commit] &amp;lt;br&amp;gt;Regression test should be added.&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 102&lt;br /&gt;
| 0000434: Segmentation fault due to a query error and Sync messages in native replication mode&lt;br /&gt;
| 2018/10/19&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=434 bug434]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=5e6d598b964ac88f41a18280f6289ca5e78ffad5 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 103&lt;br /&gt;
| pool_passwd is corrupted.&lt;br /&gt;
| 2018/10/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai, Usama&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-October/003081.html [pgpool-hackers: 3081]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=d48cc28a7b2ac42185b48873608ff876f9298d89 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 104&lt;br /&gt;
| [pgpool-hackers: 3025] Compile warns&lt;br /&gt;
| 2018/10/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-August/003025.html [pgpool-hackers: 3025]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=bc9119f61b187577d64b63ebffb6f5412202f24f commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 105&lt;br /&gt;
| 0000443: Segmentation fault occurs when a certain Bind message is sent in native replication mode.&lt;br /&gt;
| 2018/11/08&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=443 bug443]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=1d8d03237a2ad507f8f1fb8fb0c84b3084f57cdc commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 106&lt;br /&gt;
| 0000444: pgpool does not take into account parameters order in startup packet&lt;br /&gt;
| 2018/11/13&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=444 bug444]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=ffb998517bb91c512b77fbe1ca8ee331e492f131 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 107&lt;br /&gt;
| 0000448: pgpool holds the connections as idle_in_transaction which are timed out due to idle_in_transaction setting on backend nodes&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=448 bug448]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=3f5986eee360f12e6a0bb77aa46f95abf5f6bc10 cimmit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 108&lt;br /&gt;
| [pgpool-general: 6351] kind mismatch among backends, savepoint with psqlodbc&lt;br /&gt;
| 2018/12/26&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-general/2018-December/006409.html [pgpool-general: 6351]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 109&lt;br /&gt;
| 0000455: watchdog lifecheck process has segfalut in query mode&lt;br /&gt;
| 2019/01/21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| https://www.pgpool.net/mantisbt/view.php?id=455&lt;br /&gt;
| Done. https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=4cde5da1b416d909d102cfe6878c0cd5189caf86&lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 110&lt;br /&gt;
| Add regression test for query mode &lt;br /&gt;
| 2019/01/21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 111&lt;br /&gt;
| 0000483: online-recovery is blocked after a child process exits abnormally with replication mode and watchdog&lt;br /&gt;
| 2019/04/04 &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| https://www.pgpool.net/mantisbt/view.php?id=483&lt;br /&gt;
| Waiting for review-&amp;gt;the patch did not work.&lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 112&lt;br /&gt;
| Fix memory leak related to watchdog and auth pointed out by coverity&lt;br /&gt;
| 2019/05/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| src/auth/pool_hba.c src/auth/pool_auth.c src/auth/auth-scram.c src/watchdog/watchdog.c src/watchdog/wd_lifecheck.c src/config/pool_config_variable.c&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 201&lt;br /&gt;
| Feature Agreement &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 202&lt;br /&gt;
| Feature Freeze &lt;br /&gt;
| &lt;br /&gt;
| 2019/05/31&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 202&lt;br /&gt;
| Code Freeze &lt;br /&gt;
| &lt;br /&gt;
| 2019/06/30&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hoshiai</name></author>
	</entry>
	<entry>
		<id>https://pgpool.net/mediawiki/index.php?title=Pgpool-II_4.1_development&amp;diff=2980</id>
		<title>Pgpool-II 4.1 development</title>
		<link rel="alternate" type="text/html" href="https://pgpool.net/mediawiki/index.php?title=Pgpool-II_4.1_development&amp;diff=2980"/>
		<updated>2019-05-23T02:47:27Z</updated>

		<summary type="html">&lt;p&gt;Hoshiai: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Last update: 2019/05/22&lt;br /&gt;
&lt;br /&gt;
Each bug items assigned &amp;quot;SL (Severity level)&amp;quot; from 1-3 (1 is the most severe, 3 is the least severe) in &amp;quot;Status&amp;quot; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! &lt;br /&gt;
! ID&lt;br /&gt;
! Registered/start Date&lt;br /&gt;
! Target Date&lt;br /&gt;
! Priority&lt;br /&gt;
! Implementation&lt;br /&gt;
! Person in charge&lt;br /&gt;
! Overview&lt;br /&gt;
! Status&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;001&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Cert authentication between Pgpool-II and PostgreSQL&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 002&lt;br /&gt;
| [FEATURE] Add new child if it goes down&lt;br /&gt;
| 2015/09/03&lt;br /&gt;
| -&lt;br /&gt;
| Low&lt;br /&gt;
| Small&lt;br /&gt;
|&lt;br /&gt;
| pgpool-hackers:1034&lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;003&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Make PCP set configuration command public &amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|- style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;004&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Seamless Application Failover&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;s&amp;gt;Similar to Oracle&#039;s &amp;quot;Transparent Application Failover&amp;quot;.&amp;lt;/s&amp;gt;&lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 005&lt;br /&gt;
| [FEATURE] Enhancing pool_process and pool_pools&lt;br /&gt;
| 2018/02/13&lt;br /&gt;
|&lt;br /&gt;
| Low&lt;br /&gt;
| Small&lt;br /&gt;
|&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-February/002721.html [pgpool-hackers: 2721]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| &amp;lt;s&amp;gt;006&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;[FEATURE] Support more prefix for query routing (similar to NO LOAD BALANCE)&amp;lt;/s&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;s&amp;gt;[http://www.sraoss.jp/pipermail/pgpool-hackers/2018-February/002721.html [pgpool-hackers: 2721]]&amp;lt;/s&amp;gt; &lt;br /&gt;
| Removed from 4.1. 2018/11/29&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 007&lt;br /&gt;
| [FEATURE] shared relation cache&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| 2019/02/29&lt;br /&gt;
| High&lt;br /&gt;
| Large&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003124.html [pgpool-hackers: 3124]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=46917d5458a82c75e98b247a74b7ee1827666159 commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 008&lt;br /&gt;
| [FEATURE] Enhance performance: performance regression test&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Small&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| [FEATURE] Enhance performance: performance for simple query&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| XLarge&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| [FEATURE] Enhance performance: performance for extended query &lt;br /&gt;
| 2019/01/17&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| &lt;br /&gt;
| (1) Enhance performance for COPY XXX TO STDOUT (both for simple and extended query): [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=702f7c86f9b8f82f61e47235505715891ffe1b23 commit] &amp;lt;br&amp;gt; &lt;br /&gt;
(2) Enhance performance for extended query message: &amp;lt;br&amp;gt; [https://www.pgpool.net/pipermail/pgpool-hackers/2019-February/003230.html [pgpool-hackers: 3230]] [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=778f611e201d6df88ed90d01e49af77daf9f2926 commit] &amp;lt;br&amp;gt; (3) Eliminate select(2) calls in certain cases to enhance performance in simple and extended query: &amp;lt;br&amp;gt; [https://www.pgpool.net/pipermail/pgpool-hackers/2019-February/003247.html [pgpool-hackers: 3247]] [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=cf5fe7eb89a11e3ada3833343c7ed6551ce7c662 commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 009&lt;br /&gt;
| [Documentation] Review and improve the current document&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Extra Large&lt;br /&gt;
| Hoshiai&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| [Documentation] Update the examples to latest version.&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=0c9f716714dce156fe74469a933046b39896a072 commit] [http://www.pgpool.net/docs/latest/en/html/example-cluster.html doc]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| [Documentation] Add a &amp;quot;Quik start&amp;quot; guid.&lt;br /&gt;
| 2018/11/20&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 010&lt;br /&gt;
| [FEATURE] Master watchdog sets quarantine state to primary node&lt;br /&gt;
| 2018/11/26&lt;br /&gt;
| &lt;br /&gt;
| Normal&lt;br /&gt;
| Small &lt;br /&gt;
| Usama&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-March/002756.html [pgpool-hackers: 2756]] &amp;lt;br&amp;gt;[https://www.pgpool.net/pipermail/pgpool-general-jp/2018-March/001503.html [pgpool-general-jp: 1504]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 011&lt;br /&gt;
| [FEATURE] limiting number of frontends differently&lt;br /&gt;
| 2018/11/26&lt;br /&gt;
| 2018/12/04&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-November/003153.html [pgpool-hackers: 3153]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=693a6284cf2dfc2e60d5a2489c9ee5167defc3dc commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 012 &lt;br /&gt;
| [FEATURE] Don&#039;t load balance after a SELECT having functions specified in black function list and queries specified in black_query_pattern_list&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| Normal&lt;br /&gt;
| Small&lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003157.html [pgpool-hackers: 3157]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 013 &lt;br /&gt;
| [FEATURE] Support for LDAP authentication &lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Usama&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 014&lt;br /&gt;
| [FEATURE] Support for PostgreSQL 12.&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Small&lt;br /&gt;
| Ishii&lt;br /&gt;
| recovery.conf &amp;lt;br&amp;gt; pgpool_setup &amp;lt;br&amp;gt; pgppol-recovery extension&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=fda13a93a1025b498bb2a674fb49406d9e3e509c pgpool-recovery extension] &amp;lt;br&amp;gt; [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=23fb4c1250f0464a867f2ac69006d74f134213e3 pgpool_setup]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 015&lt;br /&gt;
| [FEATURE] Import PostgreSQL 12 parser.&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| Start after PostgreSQL beta release.&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 016&lt;br /&gt;
| [FEATURE] Statement level load balancing&lt;br /&gt;
| 2018/12/06&lt;br /&gt;
| 2019/03/31&lt;br /&gt;
| High&lt;br /&gt;
| Large&lt;br /&gt;
| Peng&lt;br /&gt;
|&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=1099ba610eef06a9dab6f89486cc52de55ff3ebb commit]&lt;br /&gt;
|-style=&amp;quot;background:beige&amp;quot;&lt;br /&gt;
| 017&lt;br /&gt;
| [FEATURE] Add IPv6 sppport for Pgpool-II&lt;br /&gt;
| 2019/01/17&lt;br /&gt;
| &lt;br /&gt;
| Low&lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 018&lt;br /&gt;
| [FEATURE] Add new columns to &amp;quot;show pool_nodes&amp;quot; command&lt;br /&gt;
| 2019/04/22&lt;br /&gt;
| 2019/05/15&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| Discussion: [https://www.pgpool.net/pipermail/pgpool-hackers/2019-April/003315.html [pgpool-hackers: 3315]]&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 019&lt;br /&gt;
| [FEATURE][Document] Add new performance section&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| High&lt;br /&gt;
| Medium&lt;br /&gt;
| Ishii&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 020&lt;br /&gt;
| [FEATURE] auto failback&lt;br /&gt;
| 2019/5/23&lt;br /&gt;
| 2019/5/31&lt;br /&gt;
| &lt;br /&gt;
| Medium&lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-hackers/2019-May/003328.html [pgpool-hackers: 3328]]&lt;br /&gt;
|&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 101&lt;br /&gt;
| 0000433: IN (SELECT ...) can not be rewritten in native replication mode&lt;br /&gt;
| 2018/10/19&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [http://www.pgpool.net/mantisbt/view.php?id=433 bug433]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=d53292592a9808b260171f8569752ca89d7412fc commit] &amp;lt;br&amp;gt;Regression test should be added.&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 102&lt;br /&gt;
| 0000434: Segmentation fault due to a query error and Sync messages in native replication mode&lt;br /&gt;
| 2018/10/19&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=434 bug434]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=5e6d598b964ac88f41a18280f6289ca5e78ffad5 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 103&lt;br /&gt;
| pool_passwd is corrupted.&lt;br /&gt;
| 2018/10/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai, Usama&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-October/003081.html [pgpool-hackers: 3081]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=d48cc28a7b2ac42185b48873608ff876f9298d89 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 104&lt;br /&gt;
| [pgpool-hackers: 3025] Compile warns&lt;br /&gt;
| 2018/10/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [http://www.sraoss.jp/pipermail/pgpool-hackers/2018-August/003025.html [pgpool-hackers: 3025]]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=bc9119f61b187577d64b63ebffb6f5412202f24f commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 105&lt;br /&gt;
| 0000443: Segmentation fault occurs when a certain Bind message is sent in native replication mode.&lt;br /&gt;
| 2018/11/08&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=443 bug443]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=1d8d03237a2ad507f8f1fb8fb0c84b3084f57cdc commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 106&lt;br /&gt;
| 0000444: pgpool does not take into account parameters order in startup packet&lt;br /&gt;
| 2018/11/13&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Hoshiai&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=444 bug444]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=ffb998517bb91c512b77fbe1ca8ee331e492f131 commit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 107&lt;br /&gt;
| 0000448: pgpool holds the connections as idle_in_transaction which are timed out due to idle_in_transaction setting on backend nodes&lt;br /&gt;
| 2018/11/29&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Ishii&lt;br /&gt;
| [https://www.pgpool.net/mantisbt/view.php?id=448 bug448]&lt;br /&gt;
| Done. [https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=3f5986eee360f12e6a0bb77aa46f95abf5f6bc10 cimmit]&lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 108&lt;br /&gt;
| [pgpool-general: 6351] kind mismatch among backends, savepoint with psqlodbc&lt;br /&gt;
| 2018/12/26&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| [https://www.pgpool.net/pipermail/pgpool-general/2018-December/006409.html [pgpool-general: 6351]]&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:silver&amp;quot;&lt;br /&gt;
| 109&lt;br /&gt;
| 0000455: watchdog lifecheck process has segfalut in query mode&lt;br /&gt;
| 2019/01/21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| https://www.pgpool.net/mantisbt/view.php?id=455&lt;br /&gt;
| Done. https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=4cde5da1b416d909d102cfe6878c0cd5189caf86&lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 110&lt;br /&gt;
| Add regression test for query mode &lt;br /&gt;
| 2019/01/21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Peng&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 111&lt;br /&gt;
| 0000483: online-recovery is blocked after a child process exits abnormally with replication mode and watchdog&lt;br /&gt;
| 2019/04/04 &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| https://www.pgpool.net/mantisbt/view.php?id=483&lt;br /&gt;
| Waiting for review-&amp;gt;the patch did not work.&lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 112&lt;br /&gt;
| Fix memory leak related to watchdog and auth pointed out by coverity&lt;br /&gt;
| 2019/05/22&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Usama&lt;br /&gt;
| src/auth/pool_hba.c src/auth/pool_auth.c src/auth/auth-scram.c src/watchdog/watchdog.c src/watchdog/wd_lifecheck.c src/config/pool_config_variable.c&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 201&lt;br /&gt;
| Feature Agreement &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 202&lt;br /&gt;
| Feature Freeze &lt;br /&gt;
| &lt;br /&gt;
| 2019/05/31&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-style=&amp;quot;background:white&amp;quot;&lt;br /&gt;
| 202&lt;br /&gt;
| Code Freeze &lt;br /&gt;
| &lt;br /&gt;
| 2019/06/30&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hoshiai</name></author>
	</entry>
	<entry>
		<id>https://pgpool.net/mediawiki/index.php?title=TODO&amp;diff=2979</id>
		<title>TODO</title>
		<link rel="alternate" type="text/html" href="https://pgpool.net/mediawiki/index.php?title=TODO&amp;diff=2979"/>
		<updated>2019-05-23T02:05:35Z</updated>

		<summary type="html">&lt;p&gt;Hoshiai: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__FORCETOC__&lt;br /&gt;
&lt;br /&gt;
== Pgpool-II TODO list ==&lt;br /&gt;
&lt;br /&gt;
=== Move relation cache to shared memory ===&lt;br /&gt;
: This will bring less inquiry to the system catalogue (thus better performance) and more real-time cache invalidation.&lt;br /&gt;
: This has been implemented in 4.1.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use multiple pgpool-II instances with in-memory query cache enabled ===&lt;br /&gt;
: For this purpose we not only use memcached but also we need to store the oid map info on it to share the info among pgpool-II instances.&lt;br /&gt;
: According to https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003143.html , attempt to put oid map into memcached was failed due to reliability and performance reason. Maybe we should try with more reliable in memory storage engine, such as Redis.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use pg_rewind in online recovery ===&lt;br /&gt;
: pg_rewind could speed up online recovery. However it only works when the target node was normally shut down. Can we recognize that?&lt;br /&gt;
: Probably yes by looking at pg_controldata.&lt;br /&gt;
&lt;br /&gt;
=== Support peer auth ===&lt;br /&gt;
: Apparently pool_hba.conf should recognize it if we are going to support it. Also pgpool-II should forward it to PostgreSQL. We need think the case if pg_hba.conf does not use peer auth.&lt;br /&gt;
&lt;br /&gt;
=== Automatically reattach a node in streaming master/slave configuration ===&lt;br /&gt;
:In streaming master/slave configuration there could be an option to automatically reattach a node if it&#039;s up-to-date with the master (0 bytes behind). It often happens that due to minor network outage a slave node is dropped off from pgpool and stays down even if the the node has resumed replication with master and is up-to-date.pgpool already knows how much slave is behind master so i guess this wouldn&#039;t be too difficult to implement? (from bugtrack #17)&lt;br /&gt;
: Another concern is whether the standby in question actually connects to the proper primary server or not. It is possible that the standby is up and running but is connected to different primary server. Simon Riggs suggested at the developer unconference on December 1st 2016 held in PGConf.ASiA 2016 in Tokyo that pg_stat_wal_receiver, which is new in PostgreSQL 9.6, can be used to safely judge that the standby in question is actually connected to appropriate primary server.&lt;br /&gt;
: pg_stat_replication provides ideal information for this purpose. By using it this will be supported in 4.1.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use client encoding ===&lt;br /&gt;
:It would be nice if pgpool client could use encoding which different from PostgreSQL server encoding.&lt;br /&gt;
: To implement this, the parser should be able to handle &amp;quot;unsafe&amp;quot; encodings such as Shift_JIS. psql replaces second byte of each multibyte character to fool the parser. We could hire similar strategy.&lt;br /&gt;
&lt;br /&gt;
=== Recognize multi statemnet queries ===&lt;br /&gt;
: As stated in the document, pgpool-II does not recognize multi statement queries correctly (BEGIN;SELECT 1;END). Pgpool-II only parses the first element of the query (&amp;quot;BEGIN&amp;quot; in this case) and decides how to behave.&lt;br /&gt;
: Of course this will bring various problems. It would be nice if pgpool-II could understand the each part of the multi statement queries.&lt;br /&gt;
: Problem is, how PostgreSQL backend handles the multi statement queries. For example, when client sends BEGIN;SELECT 1;END, backend returns &amp;quot;Command Complete&amp;quot; respectively and &amp;quot;Ready for query&amp;quot; is returned only once. Thus, trying to split multi statement queries to non multi statement queries like what psql is doing will not work.&lt;br /&gt;
: Simon Riggs suggested that if Pgpool-II cannot process multi-statement query properly, then it should have an option to prohibit the multi stattement queries in the developer unconference held in PGConf.ASIA 2016 on December 1st 2016 in Tokyo. (or maybe we could disregard the 2nd or later queires instead).&lt;br /&gt;
=== Cursor statements are not load balanced, sent to all DB nodes in replication mode ===&lt;br /&gt;
: DECLARE..FETCH are sent to all DB nodes in replication mode. This is because the SELECT might come with FOR UPDATE/FOR SHARE.&lt;br /&gt;
: It would be nice if pgpool-II checks if the SELECT uses FOR UPDATE/FOR SHARE and if not, enable load balance (or only sends to the master node if load balance is disabled).&lt;br /&gt;
: Note that some applications including psql could use CURSOR for SELECT. For example, from PostgreSQL 8.2, if &amp;quot;\set FETCH_COUNT n&amp;quot; is executed, psql unconditionaly uses a curor named &amp;quot;_psql_cursor&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Support IPv6 network ===&lt;br /&gt;
: As of 3.4, it is allowed to use IPv6 address for PostgreSQL backend server and bind address of pgpool-II itself.&lt;br /&gt;
: However, PCP process still only binds to IPv4 and UNIX domain socket. Same thing can be said to watchdog,&lt;br /&gt;
&lt;br /&gt;
=== Handle abnormal down of virtual IP interface when watchdog enabled ===&lt;br /&gt;
: When virtual IP interface is dropped abnormally by manual ifconfig etc., there are no one holding VIP, and clients aren&#039;t able to connect pgpool-II. Watchdog of active pgpool should monitor the interface or VIP, and handle its down.&lt;br /&gt;
&lt;br /&gt;
=== Do not invalidate query cache created in a transaction in some cases ===&lt;br /&gt;
: Currently new query cache for table t1 created in a transaction is removed at commit if there&#039;s DMLs which touch t1 in the same transaction. Apparently this is overkill for same cases:&lt;br /&gt;
 BEGIN;&lt;br /&gt;
 INSERT INTO t1 VALUES(1);&lt;br /&gt;
 SELECT * FROM t1;&lt;br /&gt;
 COMMIT;&lt;br /&gt;
: To enhance this, we need to teach pgpool-II about &amp;quot;order of SELECTs and DMLs.&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Fix memory leak in pool_config.c ===&lt;br /&gt;
: The module in charge of parsing pgpool.conf has memory leak problem. Usually pgpool reads pgpool.conf just once at the start up time, it is not a big problem. However reloading pgpool.conf will leak memory and definitely a problem. Also using memory leak check tools like valgrind emit lots of error messages and very annoying. So it would be nice to fix the problem in the future.&lt;br /&gt;
&lt;br /&gt;
=== Put together a definition of error codes into a single header file ===&lt;br /&gt;
: Currently most error codes used by pool_send_{error,fatal}_message() etc (e.g. &amp;quot;XX000&amp;quot;, &amp;quot;XX001&amp;quot;, &amp;quot;57000&amp;quot;) are hard-coded in different sources. They should be defined as constants in a single header together.&lt;br /&gt;
&lt;br /&gt;
=== Import PostgreSQL&#039;s latch module ===&lt;br /&gt;
: Pgpool already has similar module but PostgreSQL&#039;s one seems more sophiscated and reliable.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use schema qualifications in black_function_list and white_function_list ===&lt;br /&gt;
: Currently schema qualifications are silently ignored in these parameter.&lt;br /&gt;
&lt;br /&gt;
=== Support multiple UNIX domain socket directories ===&lt;br /&gt;
: PostgreSQL already does this. See [http://www.pgpool.net/pipermail/pgpool-hackers/2016-February/001433.html pgpool-hackers: 1433].&lt;br /&gt;
&lt;br /&gt;
=== Implement &amp;quot;log_timezone&amp;quot; ===&lt;br /&gt;
: (From pgpool-genera: 5215) &lt;br /&gt;
&amp;lt;blockquote&amp;gt;I&#039;d like to propose that an addition be made to pgpool to allow for a log timestamp to be written to the log with a timezone other than the locally defined timezone.  Where this is helpful is when we use an external tool like logstashforwarder, where we want the logs to be absorbed with a timestamp with a UTC timezone.  Postgres offers this feature (&#039;log_timezone&#039;), which we use, and it would be nice to allow pgpool to behave in the same way.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Allow to reset in memory query cache in the shared memory without restarting Pgpool-II ===&lt;br /&gt;
: See discussion: http://www.pgpool.net/pipermail/pgpool-general/2017-May/005565.html&lt;br /&gt;
&lt;br /&gt;
=== Do not prevent load balancing in explicit transactions in certain cases ===&lt;br /&gt;
: If write queries are issued in an explicit transaction, Following SELECTs are not load balanced, rather sent to primary node. This is intended to allow SELECTs to retrieve the latest data regardless the replication delay. Currently &amp;quot;write query&amp;quot; includes anything other than SELECTs. This is overkill for some class of queries: for example, Since SET command are sent to both primary and standby nodes, sending SELECTs to any of DB nodes could retrieve the latest data.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use comma separated IP address or host names in listen_addresses ===&lt;br /&gt;
: Currently only single IP or host name or &#039;*&#039; is allowed. PostgreSQL already allows multiple listen addresses.&lt;br /&gt;
&lt;br /&gt;
=== Add black/white table list for load balancing control ===&lt;br /&gt;
: If a table is in the black list, always send queries to primary server. Probably database.schema.table notion is preferable.&lt;br /&gt;
&lt;br /&gt;
=== Support for CRL (Certificate Revocation List) ===&lt;br /&gt;
: Our SSL support lacks this (PostgreSQL already has this) and supporting CRL should make Pgpool-II more secure.&lt;br /&gt;
&lt;br /&gt;
=== Support Cert authentication between Pgpool-II and PostgreSQL ===&lt;br /&gt;
: Pgpool-II 4.0 added support for Cert authentication between frontend and Pgpool-II, but between Pgpool-II and backend is not yet supported.&lt;br /&gt;
&lt;br /&gt;
=== Include other file in pgpool.conf file ===&lt;br /&gt;
: Add the feature pgpool.conf can include other file, which specify backendname and host specific setting values.&lt;br /&gt;
&lt;br /&gt;
=== Detach the standby node with large replication lag ===&lt;br /&gt;
&lt;br /&gt;
: Now no loadbalance to the standby node with large replication lag. But if due to some reason of online-recovery the recoveroed standby node can&#039;t connect to primary node, the standby node should be detached.&lt;br /&gt;
&lt;br /&gt;
=== Allow to get primary node info in failback_command script. ===&lt;br /&gt;
&lt;br /&gt;
Now we can get master node info in failback_command script, it will be more useful to get hostname, port and database cluster directory of new primary node.&lt;br /&gt;
&lt;br /&gt;
=== Add support for an user/password input file to pg_md5 ===&lt;br /&gt;
: https://www.pgpool.net/mantisbt/view.php?id=422&lt;br /&gt;
 pg_md5 -m -f conf/pgpool.conf --input-file=users.txt&lt;br /&gt;
&lt;br /&gt;
=== Change relative path of ssl_key and ssl_cert to DEFAULT_CONFIGDIR ===&lt;br /&gt;
&lt;br /&gt;
Currently the relative path of ssl_key and ssl_cert are the path to the directory to run pgpool.&lt;br /&gt;
Change this relative path to DEFAULT_CONFIGDIR.&lt;br /&gt;
And change default value to use absolute path.&lt;br /&gt;
&lt;br /&gt;
=== Support for SSL using ECDH ===&lt;br /&gt;
ECDH is encryption algorithm. Our SSL support lacks this (PostgreSQL already has this) and supporting ECDH should make Pgpool-II more secure.&lt;br /&gt;
&lt;br /&gt;
=== Support for SSL passphrase ===&lt;br /&gt;
Using passpharase encrypt private key, it is more sucure.&lt;br /&gt;
PostgreSQL already has this, so pgpool import it.&lt;br /&gt;
&lt;br /&gt;
== TODOs already done ==&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify which node is dead when starting up ===&lt;br /&gt;
: If we set longer health check timeout and/or many health check retries, starting up pgpool-II will take long time if some of DB nodes have been down because of health checking and retries in creating connection to backend.&lt;br /&gt;
: pgpool_status should help here but for the very first starting up, we cannot use it.&lt;br /&gt;
: It would be nice if we could tell pgpool-II about down node info.&lt;br /&gt;
: As of 3.4, pgpool_status file is changed to a plain ASCII file and users could specify down node by using ordinary text editors.&lt;br /&gt;
&lt;br /&gt;
=== Ability to load balance based on Client IP, database, table etc. ===&lt;br /&gt;
: From bugid 26:  I have recently moved a database from Mysql to postgresql 9.1.5 which is behind a pgpool-II-3.1.4 . Everything went fine until i observed that some &amp;quot;tickets&amp;quot; are not created correctly by the application (OTRS) that populate the database.&lt;br /&gt;
: After some debugging i found/guess that the problem is the following:&lt;br /&gt;
: when a cron job wants to create a ticket he has to insert info in abut 10 tables, and i guess that the 2-nd, 3-rd ... inserts depends on the first. The problem was that this operation is not performed transactionally so after the first insert, when the app tries to perform the other inserts, first tries to select &amp;quot;the first insert&amp;quot;, but this first insert is still not propagated to all nodes, and the error occurs.&lt;br /&gt;
: I`m aware of the fact that if this entire operation would be performed transactionally (only on master) the issue is solved, but unfortunately i cannot modify the app.&lt;br /&gt;
: So i want to know if there is any way that i can tell to pgpool something like :&lt;br /&gt;
: any request from this ip do not load balance.&lt;br /&gt;
&lt;br /&gt;
: PS. temporary i have set the weight factor to 0 to the 2-nd and 3-rd postgresql slaves and it behaves ok, because reads and writes only from master.&lt;br /&gt;
&lt;br /&gt;
: P.P.S. there&#039;s also different request regarding load balance.&lt;br /&gt;
: http://www.pgpool.net/pipermail/pgpool-general/2014-June/003032.html&lt;br /&gt;
&lt;br /&gt;
: This item has been implemented in 3.4 as &amp;quot;database_redirect_preference_list&amp;quot; and &amp;quot;app_name_redirect_preference_list&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Import PostgreSQL&#039;s execption handling ===&lt;br /&gt;
: PostgreSQL&#039;s exception handling (elog family) is pretty good tool to make codes to be simple and robust. It would be nice if pgpool could use this. This has been already done in 3.4.&lt;br /&gt;
=== Allow to print user name in the logging ===&lt;br /&gt;
: This will be useful for audit purpose. (done and will appear in pgpool-II-3.4.0).&lt;br /&gt;
&lt;br /&gt;
=== Remove on disk query cache ===&lt;br /&gt;
: Old on disk query cache has almost 0 user and has sevior limitation, including no automatic cache invalidation. This has been already obsoleted since on memory query cache implemented. We should remove this (this has been already in git master and will appear in 3.4.0).&lt;br /&gt;
&lt;br /&gt;
=== Restart watchdog process when it abnormaly exits ===&lt;br /&gt;
: It would be nice for pgpool main to restart watchdog process when it dies abormaly.&lt;br /&gt;
&lt;br /&gt;
=== Synchronize backend nodes information with watchdog when standby pgpool starts up ===&lt;br /&gt;
: For example, when a certain node is detached from active pgpool and then standby pgpool starts up, the standby pgpool can&#039;t recognized that the node is detached. Standby pgpool should get information about node information from other pgpool.&lt;br /&gt;
&lt;br /&gt;
=== Avoid multiple pgpools from executing failover.sh simultaneously.  ===&lt;br /&gt;
: In master-slave mode with watchdog, when a backend DB is down, all pgpools execute failover.sh. It might cause something wrong.&lt;br /&gt;
&lt;br /&gt;
=== Add new parameter for searching primary node timeout ===&lt;br /&gt;
: pgpool-II uses &amp;quot;recovery_timeout&amp;quot; for searching the primary node timeout after failover. Since this is an abuse of the parameter, we should add new parameter for searching the primary node.&lt;br /&gt;
&lt;br /&gt;
=== Allow to load balance even in an explicit transaction in replication mode ===&lt;br /&gt;
: Currently load balance in an explicit transaction is only allowed in master-slave mode. It should be allowed in the replication mode as well.&lt;br /&gt;
&lt;br /&gt;
=== Add testing framework ===&lt;br /&gt;
: PostgreSQL has nice regression test suite. It would be nice if pgpool-II has similar test suite. Problem is, such a suite could be very complex system because it should include not only pgpool-II itself, but also multiple PostgreSQL instances. Also don&#039;t forget about &amp;quot;watchdog&amp;quot;. Even such a test suite should be able to manage multiple pgpool-II instances.&lt;br /&gt;
&lt;br /&gt;
=== Add switch to control select(2) time out in connecting to PostgreSQL ===&lt;br /&gt;
: In connect_inet_domain_socket_by_port(), select(2) is issued to watch events on the fd created by non blocking connect(2). The time out parameter of select(2) is fixed to 1 second, which is not long enough in flakey network environment like AWS (http://www.pgpool.net/pipermail/pgpool-general/2014-May/002880.html).&lt;br /&gt;
: To solve the problem, new switch to control the time out is desired (done for pgpool-II 3.4.0).&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify which node is dead when starting up ===&lt;br /&gt;
: If we set longer health check timeout and/or many health check retries, starting up pgpool-II will take long time if some of DB nodes have been down because of health checking and retries in creating connection to backend.&lt;br /&gt;
: pgpool_status should help here but for the very first starting up, we cannot use it.&lt;br /&gt;
: It would be nice if we could tell pgpool-II about down node info (pgpool-II 3.4.0 chages the pgpool_status format to ASCII. Thus users can edit the file if needed).&lt;br /&gt;
&lt;br /&gt;
=== Remove parallel query ===&lt;br /&gt;
: Parallel query has severe restrictions such as certain queries cannot be used, nor in extended protocol (i.e. JDBC).&lt;br /&gt;
: Also it is pain to upgrade to newer version of PostgreSQL&#039;s SQL parser (yes, pgpool-II uses PostgreSQL&#039;s parser code). In short, parallel query gives us small gain comparing with the work needed to maintain/enhance. So I would like to obsolete parallel query in the future pgpool-II release. (related parameters have been removed from pgpool.conf in 3.4.0. pgpool-II 3.5.0 will remove actual code).&lt;br /&gt;
&lt;br /&gt;
=== Enhance pcp commands ===&lt;br /&gt;
: There are number of drawbacks in pcp commands including 1)the timeout parameter is not used any more and should be removed 2)error codes returned from the commands are completely useless 3)multiple commands can not be accepted simultaneously.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Enhance performance of extended protocol case ===&lt;br /&gt;
: When extended protocl (i.e. JDBC etc.) used, pgpool-II&#039;s overhead is pretty large compared with simple query. Need to enhance it.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Import PostgreSQL 9.5&#039;s parser ===&lt;br /&gt;
: No need to say for this.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Watchdog feature enhancement ===&lt;br /&gt;
:Watchdog is a very important feature of pgpool-II as it is used to eliminate the single point of failure and provide HA. But there are few feature requests and bugs in the existing watchdog that require little more than a simple code fix, and requires the complete revisit of its core architecture.&lt;br /&gt;
:See the design proposal for watchdog enhancement [[http://pgpool.net/mediawiki/index.php/watchdog_feature_enhancement here]]&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify user name, password and database name for health check per backend base ===&lt;br /&gt;
: In some environment it is not allowed to access standard database i.e. postgres and template1. So users need to specify them per backend basis.&lt;br /&gt;
: Maybe we need backend_healthcheck_username0 etc? See http://www.pgpool.net/pipermail/pgpool-hackers/2015-June/000942.html for more details.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Enhance documents ===&lt;br /&gt;
: The current document for is plain HTML, which is a real pain to maintain. Like PostgreSQL, is SGML our direction?&lt;br /&gt;
: Pgpool-II 3.6 is going to change the document format to SGML. (This has been already implemented in 3.6. We employ SGML).&lt;br /&gt;
&lt;br /&gt;
=== Add SET commnad ===&lt;br /&gt;
: Pgpool specific SET command would be usefull. For example, using &amp;quot;SET debug = 1&amp;quot; could produce debug info on the fly for particular session.&lt;br /&gt;
: This is being discussed in pgpool-II 3.6 development. (This item has been implemented in 3.6)&lt;br /&gt;
&lt;br /&gt;
=== Send read query only to standbys even after fail over ===&lt;br /&gt;
: We can configure pgpool-II to not send read queries to the primary. However after a fail over, the role of the node could be changed.&lt;br /&gt;
: To solve the problem, we need new flag to specify that read queries always are sent to standbys regardless the fail over ([pgpool-general: 1621] backend weight after failover).&lt;br /&gt;
: (This has been already implemented in 3.4 as &amp;quot;database_redirect_preference_list&amp;quot; and &amp;quot;app_name_redirect_preference_list&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
=== Do not disconnect to clients when a fail over happens ===&lt;br /&gt;
: At this moment we don&#039;t know how to implement it but this is a desirable feature.&lt;br /&gt;
: This has been already implemented in 3.6.&lt;br /&gt;
&lt;br /&gt;
=== Create separate process for health checking ===&lt;br /&gt;
: To make main process more stable, it would be better to make separate process which is responsible for health checking.&lt;br /&gt;
: This has been already implemented in 3.7.&lt;br /&gt;
=== Health-check timeout for each backend node ===&lt;br /&gt;
&lt;br /&gt;
: In the current, timeout values specified by health_check_timeout means the total time for checking all the backend status. Hence, if it takes a long time to succeed to check a backend, when timeout occurs during checking the next backend, this node is regarded as failed and failovered even though this is healthy.To resolve this issue, we need health-check timeout for each backend.&lt;br /&gt;
: This has been implemented in 3.7.&lt;br /&gt;
&lt;br /&gt;
=== Support SCRAM authentication ===&lt;br /&gt;
: PostgreSQL 10.0 supports SCRM authentication. It seems there&#039;s fundamental difficulty with this.&lt;br /&gt;
: See http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002331.html for more details.&lt;br /&gt;
: This has been implemented in 4.0.&lt;br /&gt;
&lt;br /&gt;
=== Allow to choose load balance behavior per SQL statement ===&lt;br /&gt;
: If a query string matches specified regular expression, send the query to either primary or standby.&lt;br /&gt;
: This has been implemented in 4.0.&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify load balance weight ratio for load balance parameters ===&lt;br /&gt;
: Allow to specify load balance weight ratio for database_redirect_preference_list, and app_name_redirect_preference_list like: &amp;quot;postgres:primary(0.3)&amp;quot;.&lt;br /&gt;
: See https://www.pgpool.net/pipermail/pgpool-hackers/2017-December/002650.html&lt;br /&gt;
: This has been implemented in 4.0.&lt;/div&gt;</summary>
		<author><name>Hoshiai</name></author>
	</entry>
	<entry>
		<id>https://pgpool.net/mediawiki/index.php?title=TODO&amp;diff=2978</id>
		<title>TODO</title>
		<link rel="alternate" type="text/html" href="https://pgpool.net/mediawiki/index.php?title=TODO&amp;diff=2978"/>
		<updated>2019-05-23T01:46:08Z</updated>

		<summary type="html">&lt;p&gt;Hoshiai: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__FORCETOC__&lt;br /&gt;
&lt;br /&gt;
== Pgpool-II TODO list ==&lt;br /&gt;
&lt;br /&gt;
=== Move relation cache to shared memory ===&lt;br /&gt;
: This will bring less inquiry to the system catalogue (thus better performance) and more real-time cache invalidation.&lt;br /&gt;
: This has been implemented in 4.1.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use multiple pgpool-II instances with in-memory query cache enabled ===&lt;br /&gt;
: For this purpose we not only use memcached but also we need to store the oid map info on it to share the info among pgpool-II instances.&lt;br /&gt;
: According to https://www.pgpool.net/pipermail/pgpool-hackers/2018-November/003143.html , attempt to put oid map into memcached was failed due to reliability and performance reason. Maybe we should try with more reliable in memory storage engine, such as Redis.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use pg_rewind in online recovery ===&lt;br /&gt;
: pg_rewind could speed up online recovery. However it only works when the target node was normally shut down. Can we recognize that?&lt;br /&gt;
: Probably yes by looking at pg_controldata.&lt;br /&gt;
&lt;br /&gt;
=== Support peer auth ===&lt;br /&gt;
: Apparently pool_hba.conf should recognize it if we are going to support it. Also pgpool-II should forward it to PostgreSQL. We need think the case if pg_hba.conf does not use peer auth.&lt;br /&gt;
&lt;br /&gt;
=== Automatically reattach a node in streaming master/slave configuration ===&lt;br /&gt;
:In streaming master/slave configuration there could be an option to automatically reattach a node if it&#039;s up-to-date with the master (0 bytes behind). It often happens that due to minor network outage a slave node is dropped off from pgpool and stays down even if the the node has resumed replication with master and is up-to-date.pgpool already knows how much slave is behind master so i guess this wouldn&#039;t be too difficult to implement? (from bugtrack #17)&lt;br /&gt;
: Another concern is whether the standby in question actually connects to the proper primary server or not. It is possible that the standby is up and running but is connected to different primary server. Simon Riggs suggested at the developer unconference on December 1st 2016 held in PGConf.ASiA 2016 in Tokyo that pg_stat_wal_receiver, which is new in PostgreSQL 9.6, can be used to safely judge that the standby in question is actually connected to appropriate primary server.&lt;br /&gt;
: pg_stat_replication provides ideal information for this purpose. By using it this will be supported in 4.1.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use client encoding ===&lt;br /&gt;
:It would be nice if pgpool client could use encoding which different from PostgreSQL server encoding.&lt;br /&gt;
: To implement this, the parser should be able to handle &amp;quot;unsafe&amp;quot; encodings such as Shift_JIS. psql replaces second byte of each multibyte character to fool the parser. We could hire similar strategy.&lt;br /&gt;
&lt;br /&gt;
=== Recognize multi statemnet queries ===&lt;br /&gt;
: As stated in the document, pgpool-II does not recognize multi statement queries correctly (BEGIN;SELECT 1;END). Pgpool-II only parses the first element of the query (&amp;quot;BEGIN&amp;quot; in this case) and decides how to behave.&lt;br /&gt;
: Of course this will bring various problems. It would be nice if pgpool-II could understand the each part of the multi statement queries.&lt;br /&gt;
: Problem is, how PostgreSQL backend handles the multi statement queries. For example, when client sends BEGIN;SELECT 1;END, backend returns &amp;quot;Command Complete&amp;quot; respectively and &amp;quot;Ready for query&amp;quot; is returned only once. Thus, trying to split multi statement queries to non multi statement queries like what psql is doing will not work.&lt;br /&gt;
: Simon Riggs suggested that if Pgpool-II cannot process multi-statement query properly, then it should have an option to prohibit the multi stattement queries in the developer unconference held in PGConf.ASIA 2016 on December 1st 2016 in Tokyo. (or maybe we could disregard the 2nd or later queires instead).&lt;br /&gt;
=== Cursor statements are not load balanced, sent to all DB nodes in replication mode ===&lt;br /&gt;
: DECLARE..FETCH are sent to all DB nodes in replication mode. This is because the SELECT might come with FOR UPDATE/FOR SHARE.&lt;br /&gt;
: It would be nice if pgpool-II checks if the SELECT uses FOR UPDATE/FOR SHARE and if not, enable load balance (or only sends to the master node if load balance is disabled).&lt;br /&gt;
: Note that some applications including psql could use CURSOR for SELECT. For example, from PostgreSQL 8.2, if &amp;quot;\set FETCH_COUNT n&amp;quot; is executed, psql unconditionaly uses a curor named &amp;quot;_psql_cursor&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Support IPv6 network ===&lt;br /&gt;
: As of 3.4, it is allowed to use IPv6 address for PostgreSQL backend server and bind address of pgpool-II itself.&lt;br /&gt;
: However, PCP process still only binds to IPv4 and UNIX domain socket. Same thing can be said to watchdog,&lt;br /&gt;
&lt;br /&gt;
=== Handle abnormal down of virtual IP interface when watchdog enabled ===&lt;br /&gt;
: When virtual IP interface is dropped abnormally by manual ifconfig etc., there are no one holding VIP, and clients aren&#039;t able to connect pgpool-II. Watchdog of active pgpool should monitor the interface or VIP, and handle its down.&lt;br /&gt;
&lt;br /&gt;
=== Do not invalidate query cache created in a transaction in some cases ===&lt;br /&gt;
: Currently new query cache for table t1 created in a transaction is removed at commit if there&#039;s DMLs which touch t1 in the same transaction. Apparently this is overkill for same cases:&lt;br /&gt;
 BEGIN;&lt;br /&gt;
 INSERT INTO t1 VALUES(1);&lt;br /&gt;
 SELECT * FROM t1;&lt;br /&gt;
 COMMIT;&lt;br /&gt;
: To enhance this, we need to teach pgpool-II about &amp;quot;order of SELECTs and DMLs.&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Fix memory leak in pool_config.c ===&lt;br /&gt;
: The module in charge of parsing pgpool.conf has memory leak problem. Usually pgpool reads pgpool.conf just once at the start up time, it is not a big problem. However reloading pgpool.conf will leak memory and definitely a problem. Also using memory leak check tools like valgrind emit lots of error messages and very annoying. So it would be nice to fix the problem in the future.&lt;br /&gt;
&lt;br /&gt;
=== Put together a definition of error codes into a single header file ===&lt;br /&gt;
: Currently most error codes used by pool_send_{error,fatal}_message() etc (e.g. &amp;quot;XX000&amp;quot;, &amp;quot;XX001&amp;quot;, &amp;quot;57000&amp;quot;) are hard-coded in different sources. They should be defined as constants in a single header together.&lt;br /&gt;
&lt;br /&gt;
=== Import PostgreSQL&#039;s latch module ===&lt;br /&gt;
: Pgpool already has similar module but PostgreSQL&#039;s one seems more sophiscated and reliable.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use schema qualifications in black_function_list and white_function_list ===&lt;br /&gt;
: Currently schema qualifications are silently ignored in these parameter.&lt;br /&gt;
&lt;br /&gt;
=== Support multiple UNIX domain socket directories ===&lt;br /&gt;
: PostgreSQL already does this. See [http://www.pgpool.net/pipermail/pgpool-hackers/2016-February/001433.html pgpool-hackers: 1433].&lt;br /&gt;
&lt;br /&gt;
=== Implement &amp;quot;log_timezone&amp;quot; ===&lt;br /&gt;
: (From pgpool-genera: 5215) &lt;br /&gt;
&amp;lt;blockquote&amp;gt;I&#039;d like to propose that an addition be made to pgpool to allow for a log timestamp to be written to the log with a timezone other than the locally defined timezone.  Where this is helpful is when we use an external tool like logstashforwarder, where we want the logs to be absorbed with a timestamp with a UTC timezone.  Postgres offers this feature (&#039;log_timezone&#039;), which we use, and it would be nice to allow pgpool to behave in the same way.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Allow to reset in memory query cache in the shared memory without restarting Pgpool-II ===&lt;br /&gt;
: See discussion: http://www.pgpool.net/pipermail/pgpool-general/2017-May/005565.html&lt;br /&gt;
&lt;br /&gt;
=== Do not prevent load balancing in explicit transactions in certain cases ===&lt;br /&gt;
: If write queries are issued in an explicit transaction, Following SELECTs are not load balanced, rather sent to primary node. This is intended to allow SELECTs to retrieve the latest data regardless the replication delay. Currently &amp;quot;write query&amp;quot; includes anything other than SELECTs. This is overkill for some class of queries: for example, Since SET command are sent to both primary and standby nodes, sending SELECTs to any of DB nodes could retrieve the latest data.&lt;br /&gt;
&lt;br /&gt;
=== Allow to use comma separated IP address or host names in listen_addresses ===&lt;br /&gt;
: Currently only single IP or host name or &#039;*&#039; is allowed. PostgreSQL already allows multiple listen addresses.&lt;br /&gt;
&lt;br /&gt;
=== Add black/white table list for load balancing control ===&lt;br /&gt;
: If a table is in the black list, always send queries to primary server. Probably database.schema.table notion is preferable.&lt;br /&gt;
&lt;br /&gt;
=== Support for CRL (Certificate Revocation List) ===&lt;br /&gt;
: Our SSL support lacks this (PostgreSQL already has this) and supporting CRL should make Pgpool-II more secure.&lt;br /&gt;
&lt;br /&gt;
=== Support Cert authentication between Pgpool-II and PostgreSQL ===&lt;br /&gt;
: Pgpool-II 4.0 added support for Cert authentication between frontend and Pgpool-II, but between Pgpool-II and backend is not yet supported.&lt;br /&gt;
&lt;br /&gt;
=== Include other file in pgpool.conf file ===&lt;br /&gt;
: Add the feature pgpool.conf can include other file, which specify backendname and host specific setting values.&lt;br /&gt;
&lt;br /&gt;
=== Detach the standby node with large replication lag ===&lt;br /&gt;
&lt;br /&gt;
: Now no loadbalance to the standby node with large replication lag. But if due to some reason of online-recovery the recoveroed standby node can&#039;t connect to primary node, the standby node should be detached.&lt;br /&gt;
&lt;br /&gt;
=== Allow to get primary node info in failback_command script. ===&lt;br /&gt;
&lt;br /&gt;
Now we can get master node info in failback_command script, it will be more useful to get hostname, port and database cluster directory of new primary node.&lt;br /&gt;
&lt;br /&gt;
=== Add support for an user/password input file to pg_md5 ===&lt;br /&gt;
: https://www.pgpool.net/mantisbt/view.php?id=422&lt;br /&gt;
 pg_md5 -m -f conf/pgpool.conf --input-file=users.txt&lt;br /&gt;
&lt;br /&gt;
=== Change relative path of ssl_key and ssl_cert to DEFAULT_CONFIGDIR ===&lt;br /&gt;
&lt;br /&gt;
Currently the relative path of ssl_key and ssl_cert are the path to the directory to run pgpool.&lt;br /&gt;
Change this relative path to DEFAULT_CONFIGDIR.&lt;br /&gt;
And change default value to use absolute path.&lt;br /&gt;
&lt;br /&gt;
=== Support for SSL using ECDH ===&lt;br /&gt;
ECDH is encryption algorithm. Our SSL support lacks this (PostgreSQL already has this) and supporting ECDH should make Pgpool-II more secure.&lt;br /&gt;
&lt;br /&gt;
== TODOs already done ==&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify which node is dead when starting up ===&lt;br /&gt;
: If we set longer health check timeout and/or many health check retries, starting up pgpool-II will take long time if some of DB nodes have been down because of health checking and retries in creating connection to backend.&lt;br /&gt;
: pgpool_status should help here but for the very first starting up, we cannot use it.&lt;br /&gt;
: It would be nice if we could tell pgpool-II about down node info.&lt;br /&gt;
: As of 3.4, pgpool_status file is changed to a plain ASCII file and users could specify down node by using ordinary text editors.&lt;br /&gt;
&lt;br /&gt;
=== Ability to load balance based on Client IP, database, table etc. ===&lt;br /&gt;
: From bugid 26:  I have recently moved a database from Mysql to postgresql 9.1.5 which is behind a pgpool-II-3.1.4 . Everything went fine until i observed that some &amp;quot;tickets&amp;quot; are not created correctly by the application (OTRS) that populate the database.&lt;br /&gt;
: After some debugging i found/guess that the problem is the following:&lt;br /&gt;
: when a cron job wants to create a ticket he has to insert info in abut 10 tables, and i guess that the 2-nd, 3-rd ... inserts depends on the first. The problem was that this operation is not performed transactionally so after the first insert, when the app tries to perform the other inserts, first tries to select &amp;quot;the first insert&amp;quot;, but this first insert is still not propagated to all nodes, and the error occurs.&lt;br /&gt;
: I`m aware of the fact that if this entire operation would be performed transactionally (only on master) the issue is solved, but unfortunately i cannot modify the app.&lt;br /&gt;
: So i want to know if there is any way that i can tell to pgpool something like :&lt;br /&gt;
: any request from this ip do not load balance.&lt;br /&gt;
&lt;br /&gt;
: PS. temporary i have set the weight factor to 0 to the 2-nd and 3-rd postgresql slaves and it behaves ok, because reads and writes only from master.&lt;br /&gt;
&lt;br /&gt;
: P.P.S. there&#039;s also different request regarding load balance.&lt;br /&gt;
: http://www.pgpool.net/pipermail/pgpool-general/2014-June/003032.html&lt;br /&gt;
&lt;br /&gt;
: This item has been implemented in 3.4 as &amp;quot;database_redirect_preference_list&amp;quot; and &amp;quot;app_name_redirect_preference_list&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Import PostgreSQL&#039;s execption handling ===&lt;br /&gt;
: PostgreSQL&#039;s exception handling (elog family) is pretty good tool to make codes to be simple and robust. It would be nice if pgpool could use this. This has been already done in 3.4.&lt;br /&gt;
=== Allow to print user name in the logging ===&lt;br /&gt;
: This will be useful for audit purpose. (done and will appear in pgpool-II-3.4.0).&lt;br /&gt;
&lt;br /&gt;
=== Remove on disk query cache ===&lt;br /&gt;
: Old on disk query cache has almost 0 user and has sevior limitation, including no automatic cache invalidation. This has been already obsoleted since on memory query cache implemented. We should remove this (this has been already in git master and will appear in 3.4.0).&lt;br /&gt;
&lt;br /&gt;
=== Restart watchdog process when it abnormaly exits ===&lt;br /&gt;
: It would be nice for pgpool main to restart watchdog process when it dies abormaly.&lt;br /&gt;
&lt;br /&gt;
=== Synchronize backend nodes information with watchdog when standby pgpool starts up ===&lt;br /&gt;
: For example, when a certain node is detached from active pgpool and then standby pgpool starts up, the standby pgpool can&#039;t recognized that the node is detached. Standby pgpool should get information about node information from other pgpool.&lt;br /&gt;
&lt;br /&gt;
=== Avoid multiple pgpools from executing failover.sh simultaneously.  ===&lt;br /&gt;
: In master-slave mode with watchdog, when a backend DB is down, all pgpools execute failover.sh. It might cause something wrong.&lt;br /&gt;
&lt;br /&gt;
=== Add new parameter for searching primary node timeout ===&lt;br /&gt;
: pgpool-II uses &amp;quot;recovery_timeout&amp;quot; for searching the primary node timeout after failover. Since this is an abuse of the parameter, we should add new parameter for searching the primary node.&lt;br /&gt;
&lt;br /&gt;
=== Allow to load balance even in an explicit transaction in replication mode ===&lt;br /&gt;
: Currently load balance in an explicit transaction is only allowed in master-slave mode. It should be allowed in the replication mode as well.&lt;br /&gt;
&lt;br /&gt;
=== Add testing framework ===&lt;br /&gt;
: PostgreSQL has nice regression test suite. It would be nice if pgpool-II has similar test suite. Problem is, such a suite could be very complex system because it should include not only pgpool-II itself, but also multiple PostgreSQL instances. Also don&#039;t forget about &amp;quot;watchdog&amp;quot;. Even such a test suite should be able to manage multiple pgpool-II instances.&lt;br /&gt;
&lt;br /&gt;
=== Add switch to control select(2) time out in connecting to PostgreSQL ===&lt;br /&gt;
: In connect_inet_domain_socket_by_port(), select(2) is issued to watch events on the fd created by non blocking connect(2). The time out parameter of select(2) is fixed to 1 second, which is not long enough in flakey network environment like AWS (http://www.pgpool.net/pipermail/pgpool-general/2014-May/002880.html).&lt;br /&gt;
: To solve the problem, new switch to control the time out is desired (done for pgpool-II 3.4.0).&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify which node is dead when starting up ===&lt;br /&gt;
: If we set longer health check timeout and/or many health check retries, starting up pgpool-II will take long time if some of DB nodes have been down because of health checking and retries in creating connection to backend.&lt;br /&gt;
: pgpool_status should help here but for the very first starting up, we cannot use it.&lt;br /&gt;
: It would be nice if we could tell pgpool-II about down node info (pgpool-II 3.4.0 chages the pgpool_status format to ASCII. Thus users can edit the file if needed).&lt;br /&gt;
&lt;br /&gt;
=== Remove parallel query ===&lt;br /&gt;
: Parallel query has severe restrictions such as certain queries cannot be used, nor in extended protocol (i.e. JDBC).&lt;br /&gt;
: Also it is pain to upgrade to newer version of PostgreSQL&#039;s SQL parser (yes, pgpool-II uses PostgreSQL&#039;s parser code). In short, parallel query gives us small gain comparing with the work needed to maintain/enhance. So I would like to obsolete parallel query in the future pgpool-II release. (related parameters have been removed from pgpool.conf in 3.4.0. pgpool-II 3.5.0 will remove actual code).&lt;br /&gt;
&lt;br /&gt;
=== Enhance pcp commands ===&lt;br /&gt;
: There are number of drawbacks in pcp commands including 1)the timeout parameter is not used any more and should be removed 2)error codes returned from the commands are completely useless 3)multiple commands can not be accepted simultaneously.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Enhance performance of extended protocol case ===&lt;br /&gt;
: When extended protocl (i.e. JDBC etc.) used, pgpool-II&#039;s overhead is pretty large compared with simple query. Need to enhance it.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Import PostgreSQL 9.5&#039;s parser ===&lt;br /&gt;
: No need to say for this.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Watchdog feature enhancement ===&lt;br /&gt;
:Watchdog is a very important feature of pgpool-II as it is used to eliminate the single point of failure and provide HA. But there are few feature requests and bugs in the existing watchdog that require little more than a simple code fix, and requires the complete revisit of its core architecture.&lt;br /&gt;
:See the design proposal for watchdog enhancement [[http://pgpool.net/mediawiki/index.php/watchdog_feature_enhancement here]]&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify user name, password and database name for health check per backend base ===&lt;br /&gt;
: In some environment it is not allowed to access standard database i.e. postgres and template1. So users need to specify them per backend basis.&lt;br /&gt;
: Maybe we need backend_healthcheck_username0 etc? See http://www.pgpool.net/pipermail/pgpool-hackers/2015-June/000942.html for more details.&lt;br /&gt;
: This has been already done in 3.5.&lt;br /&gt;
&lt;br /&gt;
=== Enhance documents ===&lt;br /&gt;
: The current document for is plain HTML, which is a real pain to maintain. Like PostgreSQL, is SGML our direction?&lt;br /&gt;
: Pgpool-II 3.6 is going to change the document format to SGML. (This has been already implemented in 3.6. We employ SGML).&lt;br /&gt;
&lt;br /&gt;
=== Add SET commnad ===&lt;br /&gt;
: Pgpool specific SET command would be usefull. For example, using &amp;quot;SET debug = 1&amp;quot; could produce debug info on the fly for particular session.&lt;br /&gt;
: This is being discussed in pgpool-II 3.6 development. (This item has been implemented in 3.6)&lt;br /&gt;
&lt;br /&gt;
=== Send read query only to standbys even after fail over ===&lt;br /&gt;
: We can configure pgpool-II to not send read queries to the primary. However after a fail over, the role of the node could be changed.&lt;br /&gt;
: To solve the problem, we need new flag to specify that read queries always are sent to standbys regardless the fail over ([pgpool-general: 1621] backend weight after failover).&lt;br /&gt;
: (This has been already implemented in 3.4 as &amp;quot;database_redirect_preference_list&amp;quot; and &amp;quot;app_name_redirect_preference_list&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
=== Do not disconnect to clients when a fail over happens ===&lt;br /&gt;
: At this moment we don&#039;t know how to implement it but this is a desirable feature.&lt;br /&gt;
: This has been already implemented in 3.6.&lt;br /&gt;
&lt;br /&gt;
=== Create separate process for health checking ===&lt;br /&gt;
: To make main process more stable, it would be better to make separate process which is responsible for health checking.&lt;br /&gt;
: This has been already implemented in 3.7.&lt;br /&gt;
=== Health-check timeout for each backend node ===&lt;br /&gt;
&lt;br /&gt;
: In the current, timeout values specified by health_check_timeout means the total time for checking all the backend status. Hence, if it takes a long time to succeed to check a backend, when timeout occurs during checking the next backend, this node is regarded as failed and failovered even though this is healthy.To resolve this issue, we need health-check timeout for each backend.&lt;br /&gt;
: This has been implemented in 3.7.&lt;br /&gt;
&lt;br /&gt;
=== Support SCRAM authentication ===&lt;br /&gt;
: PostgreSQL 10.0 supports SCRM authentication. It seems there&#039;s fundamental difficulty with this.&lt;br /&gt;
: See http://www.pgpool.net/pipermail/pgpool-hackers/2017-May/002331.html for more details.&lt;br /&gt;
: This has been implemented in 4.0.&lt;br /&gt;
&lt;br /&gt;
=== Allow to choose load balance behavior per SQL statement ===&lt;br /&gt;
: If a query string matches specified regular expression, send the query to either primary or standby.&lt;br /&gt;
: This has been implemented in 4.0.&lt;br /&gt;
&lt;br /&gt;
=== Allow to specify load balance weight ratio for load balance parameters ===&lt;br /&gt;
: Allow to specify load balance weight ratio for database_redirect_preference_list, and app_name_redirect_preference_list like: &amp;quot;postgres:primary(0.3)&amp;quot;.&lt;br /&gt;
: See https://www.pgpool.net/pipermail/pgpool-hackers/2017-December/002650.html&lt;br /&gt;
: This has been implemented in 4.0.&lt;/div&gt;</summary>
		<author><name>Hoshiai</name></author>
	</entry>
</feed>