pgpool2.git / summary / log / commit / refs
commit dcf9d840d60616eb50ef2585f3a1081ceaa6c16a
Author: Toshihiro Kitagawa <kitagawa at sraoss.co.jp>
Date: Wed Jul 13 04:24:55 2011 +0000
Prepare 3.1-alpha3.
NEWS | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
doc/pgpool-ja.html | 24 +++++++++++++--
2 files changed, 110 insertions(+), 3 deletions(-)
diff --git a/NEWS b/NEWS
index 9112df100..f72792556 100644
--- a/NEWS
+++ b/NEWS
@@ -7,6 +7,25 @@
* Incompatible changes
+ - Change the lock method of insert_lock. The previous insert_lock uses
+ row locking against the sequence relation, but The current one uses
+ row locking against pgpool_catalog.insert_lock table. The reason is
+ that PostgreSQL core developers decided to disallow row locking
+ against the sequence relation to avoid an internal error which it
+ leads. So creating insert_lock table in all databases which are
+ accessed via pgpool-II beforehand is required. If does not exist
+ insert_lock table, pgpool-II locks the insert target table. This
+ behavior is same as pgpool-II 2.2 and 2.3 series. If you want to use
+ insert_lock which is compatible with older releases, you can specify
+ lock method by configure options: --enable-sequence-lock,
+ --enable-table-lock(Kitagawa)
+
+ - In streaming replication, if delay_threshold is 0 or health checking
+ is disabled, the delay checking is not performed. This is the behaviour
+ according to a description of the pgpool-II manual. But, so far the
+ delay checking was performed even if health checking was disabled
+ (Guillaume Lelarge)
+
- Deprecate backend_socket_dir. Instead, if backend_hostname starts
with '/' it is regarded the as path to Unix domain. If backend_hostname
is left empty, then default Unix domain path(/tmp) is used. This
@@ -25,7 +44,8 @@
node(Kitagawa)
- Add node_id to each PostgreSQL DB node info in the output of
- show pool_nodes. Patch contributed by Jean-Paul Argudo(Gleu)
+ show pool_nodes. Patch contributed by Jean-Paul Argudo
+ (Guillaume Lelarge)
* New features
@@ -53,6 +73,24 @@
pool_status. Also C API for this command is added. Patch
contributed by Jehan-Guillaume (ioguix) de Rorthais(Tatsuo)
+ - Add new per backend directive "backend_flag". This controls per
+ backend behavior. Currently "ALLOW_TO_FAILOVER" or
+ "DISALLOW_TO_FAILOVER" are allowed(Tatsuo)
+
+ - Add health_check_password directive because the directives of
+ helthcheck are used to check replication delay in streaming
+ replication mode(Nicolas Thauvin)
+
+ - Add --username(or -u) option to pg_md5 command. This allows to manage
+ users which do not have UNIX accounts. Japanese document change by
+ Tatsuo Ishii(Nicolas Thauvin)
+
+ - Add pgpool_adm functions to pgpool_adm/. These are user-defined
+ functions written in C language which work like pcp commands
+ (Jehan-Guillaume (ioguix) de Rorthais)
+
+ - Add SQL files to uninstall functions to sql/(Nicolas Thauvin)
+
* Bug fixes
- Fix pgpool-regclass() to be compiled in PostgreSQL 8.0 or later.
@@ -80,6 +118,30 @@
- Fix bug with start_recoery() which is apparently wrong usage of
PQfinish()(Tatsuo)
+ - Fix bug which does not update the node status when reattaching the
+ node in raw mode(Guillaume Lelarge)
+
+ - Fix incorrect calculation of the replication delay in streaming
+ replication mode(Tatsuo)
+
+ - Replace wrong function name "notice_backend_error" with correct one
+ "degenerate_backend_set" in the failover log message(Tatsuo)
+
+ - Remove unnecessary logging at the end of pgpool.conf parsing(Tatsuo)
+
+ - Fix hangup when using md5 authentication method and running as
+ daemon. Patch contributed by Nicolas Thauvin(Tatsuo)
+
+ - Fix log_per_node_statement so that it prints statements in the
+ extended query protocol. This used to work but was broken in 3.0
+ (Kitagawa)
+
+ - Fix incorrect error message which is sent to the frontend when
+ client idle time reached client_idle_limit(Tatsuo)
+
+ - Fix "backend status" variable name correctly in pool_status.
+ Replace the space with a '_'(Guillaume Lelarge)
+
* Enhancements
- Import PostgreSQL 9.0 parser. This allows to use CREATE INDEX with
@@ -98,6 +160,31 @@
- Enhance online recovery documents in streaming replication(Tatsuo)
+ - Change the function to check the replication delay in streaming
+ replication mode. Currently, pgpool uses
+ pg_last_xlog_replay_location() instead of
+ pg_last_xlog_receive_location(). Fix suggested by Anton Yuzhaninov
+ (Tatsuo)
+
+ - Allow time stamp rewriting to work with arbitrary expression in
+ default value of a column. Before we detected anything including
+ now() then simply replaced it to now(). This will lead to wrong
+ rewriting of default value. for example, timezone('utc'::text, now()).
+ Note that, however, this only adopts to simple queries. Extended
+ protocols(for example Java, PHP PDO) or SQL "PREPARE" still remain
+ same(Tatsuo)
+
+ - Enhance the error message which is emitted when failed to check
+ replication delay(Nicolas Thauvin)
+
+ - Change error message "do_md5: read_password_packet failed" into debug
+ level(Kitagawa)
+
+ - Add currval() and lastval() to black_function_list of sample
+ configuration files. If they are load balanced, currval() or
+ lastval() may be called before the result of nextval() or setval()
+ is propagated to slaves(Tatsuo)
+
3.0.3 (umiyameboshi) 2011/02/23
* Version 3.0.3
diff --git a/doc/pgpool-ja.html b/doc/pgpool-ja.html
index 7bc5686b1..dd8ed9fdc 100644
--- a/doc/pgpool-ja.html
+++ b/doc/pgpool-ja.html
@@ -8,7 +8,7 @@
<body>
<!-- hhmts start -->
-Last modified: Wed Jul 6 22:55:53 JST 2011
+Last modified: Wed Jul 13 13:24:38 JST 2011
<!-- hhmts end -->
<body bgcolor="#ffffff">
@@ -3893,10 +3893,12 @@ pgpool-II$B$N%A%e!<%H%j%"%k$O(B<a href="tutorial-ja.html">$B$3$3(B<a/>$B$K$
<h3>$B8_49@-$N$J$$JQ99(B</h3>
<p>
<ul>
+ <li>insert_lock$B$N%m%C%/J}K!$rJQ99$7$^$7$?!#0JA0$N(Binsert_lock$B$O!"%7!<%1%s%9%F!<%V%k$KBP$7$F9T%m%C%/$r9T$$$^$7$?$,!"8=:_$O!"(Bpgpool_catalog.insert_lock$B%F!<%V%k$KBP$7$F9T%m%C%/$r9T$$$^$9!#$=$NM}M3$O!"%7!<%1%s%9%F!<%V%k$KBP$9$k%m%C%/$,FbIt%(%i!<$r0z$-5/$3$9$?$a!"(BPostgreSQL$B$N%3%"3+H/<T$,$=$l$r5v2D$7$J$$$3$H$r7hDj$7$?$?$a$G$9!#$7$?$,$C$F!"(Bpgpool-II$B7PM3$G%"%/%;%9$9$k$9$Y$F$N%G!<%?%Y!<%9$K(Binsert_lock$B%F!<%V%k$r$"$i$+$8$a:n@.$7$F$*$/I,MW$,$"$j$^$9!#$b$7!"(Binsert_lock$B%F!<%V%k$,B8:_$7$J$$>l9g$O!"A^F~BP>]$N%F!<%V%k$KBP$7$F%m%C%/$r9T$$$^$9!#$3$l$O!"(Bpgpool-II 2.2$B$H(B2.3$B%7%j!<%:$N(Binsert_lock$B$HF1$8F0:n$G$9!#$^$?!"2a5n$N%P!<%8%g%s$H8_49@-$N$"$k(Binsert_lock$B$r;HMQ$7$?$$>l9g$O!"(Bconfigure$B%*%W%7%g%s(B(--enable-sequence-lock,--enable-table-lock)$B$G@_Dj$G$-$^$9(B(Kitagawa)
+ <li>$B%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s$K$*$$$F!"(Bdelay_threshold$B$,(B0$B$^$?$O%X%k%9%A%'%C%/$,L58z$J$i$P!"CY1d%A%'%C%/$O<B;\$5$l$J$/$J$j$^$7$?!#$3$l$O(Bpgpool-II$B%^%K%e%"%kDL$j$NF0:n$G$9$,!"$3$l$^$G$O%X%k%9%A%'%C%/$,L58z$N>l9g$bCY1d%A%'%C%/$,<B;\$5$l$F$$$^$7$?(B(Guillaume Lelarge)
<li>backend_socket_dir$B%Q%i%a!<%?$rGQ;_$7$^$7$?!#$=$NBe$o$j$K!"(Bbackend_hostname$B$,(B'/'$B$G;O$^$k$J$i$P!"$=$l$r(BUNIX$B%I%a%$%s$X$N%Q%9$H$_$J$7$^$9!#(Bbackend_hostname$B$,6u$J$i$P!"%G%U%)%k%H$N(BUNIX$B%I%a%$%s%Q%9(B(/tmp)$B$,;H$o$l$^$9!#$3$l$O!"(Blibpq$B%$%s%?%U%'!<%9$N5,Ls$K=>$$$^$9!#%Q%C%A$O(BJehan-Guillaume (ioguix) de Rorthais$B$5$s$+$iD:$-!"DI2C$N=$@5$r9T$$$^$7$?(B(Tatsuo)
<li>$B%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s9=@.$G$N%*%s%i%$%s%j%+%P%j$K$*$$$F!"%j%+%P%j=*N;;~$K;R%W%m%;%9$r:F5/F0$7$J$$$h$&$K$7$^$7$?!#$=$N$?$a!"4{B8$N%;%C%7%g%s$O%*%s%i%$%s%j%+%P%jCf$b7QB3$9$k$3$H$,$G$-$^$9(B(Tatsuo)
<li>$B%U%'%$%k%*!<%P!<;~$K(Bpgpool_walrecrunning()$B$r;HMQ$;$:!"%W%i%$%^%j%N!<%I$X$N>:3J$,40N;$9$k$^$GBT$D$h$&$K$J$j$^$7$?!#4X?t$r;HMQ$7$J$$M}M3$O%W%i%$%^%j%N!<%I$r3N<B$K8+$D$1$k$3$H$,$G$-$J$$$?$a$G$9!#$7$+$7!"$3$N=$@5$K$O%W%i%$%^%j%N!<%I$,8=$l$J$$$H$-$K(Brecovery_timeout$B$N4V(Bpgpool-II$B$,BT$C$F$7$^$&LdBj$,$^$@;D$C$F$$$^$9(B(Kitagawa)
- <li>PostgreSQL DB$B%N!<%I>pJs$r=PNO$9$k(Bpool_nodes$B$K!V%N!<%I(BID$B!W$rDI2C$7$^$7$?!#%Q%C%A$O(BJean-Paul Argudo$B$5$s$+$iD:$-$^$7$?(B(Gleu)
+ <li>PostgreSQL DB$B%N!<%I>pJs$r=PNO$9$k(Bpool_nodes$B$K!V%N!<%I(BID$B!W$rDI2C$7$^$7$?!#%Q%C%A$O(BJean-Paul Argudo$B$5$s$+$iD:$-$^$7$?(B(Guillaume Lelarge)
</ul>
</p>
@@ -3909,6 +3911,11 @@ pgpool-II$B$N%A%e!<%H%j%"%k$O(B<a href="tutorial-ja.html">$B$3$3(B<a/>$B$K$
<li>follow_master_command$B%Q%i%a!<%?$rDI2C$7$^$7$?!#$3$N%Q%i%a!<%?$K$O!"%^%9%?!<%9%l!<%V%b!<%I$N%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s9=@.$K$*$$$F%^%9%?%N!<%I$,%U%'%$%k%*!<%P!<$7$?8e$K<B9T$5$l$k%3%^%s%I$r;XDj$7$^$9!#%Q%C%A$O(BGilles Darold$B$5$s$+$iD:$-$^$7$?(B(Kitagawa)
<li>pcp_promote_node$B%3%^%s%I$rDI2C$7$^$7$?!#$3$N%3%^%s%I$O(Bpgpool-II$B$KBP$7$F?7$7$$%^%9%?%N!<%I$X$N>:3J$r9T$$$^$9!#$3$l$O!"%^%9%?!<%9%l!<%V%b!<%I$N%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s9=@.$N$_$G;HMQ$G$-$^$9!#%Q%C%A$O(BGilles Darold$B$5$s$+$iD:$-$^$7$?(B(Kitagawa)
<li>pcp_pool_status$B%3%^%s%I$rDI2C$7$^$7$?!#$^$?!"BP1~$9$k(BC API$B$bDI2C$5$l$F$$$^$9!#%Q%C%A$O(BJehan-Guillaume (ioguix) de Rorthais$B$5$s$+$iD:$-$^$7$?(B(Tatsuo)
+ <li>$B%P%C%/%(%s%I$4$H$N%Q%i%a!<%?(B"backend_flag"$B$rDI2C$7$^$7$?!#$3$l$O!"%P%C%/%(%s%I$4$H$NF0:n$r@)8f$7$^$9!#:#$O(B"ALLOW_TO_FAILOVER"$B$^$?$O(B"DISALLOW_TO_FAILOVER"$B$,;XDj$G$-$^$9(B(Tatsuo)
+ <li>$B%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s%b!<%I$N%l%W%j%1!<%7%g%sCY1d%A%'%C%/$G%X%k%9%A%'%C%/$N%Q%i%a!<%?$,;HMQ$5$l$k$?$a!"(Bhealth_check_password$B%Q%i%a!<%?$rDI2C$7$^$7$?(B(Nicolas Thauvin)
+ <li>pg_md5$B%3%^%s%I$K(B--username($B$^$?$O(B-u)$B%*%W%7%g%s$rDI2C$7$^$7$?!#$3$l$O!"(BUNIX$B%"%+%&%s%H$r;}$?$J$$%f!<%6$N4IM}$r2DG=$K$7$^$9!#F|K\8l%I%-%e%a%s%H$O(BTatsuo Ishii$B$5$s$,=$@5$7$^$7$?(B(Nicolas Thauvin)
+ <li>pgpool_adm$B4X?t$r(Bpgpool_adm/$B$KDI2C$7$^$7$?!#$3$l$i$O!"(Bpcp$B%3%^%s%I$N$h$&$KF0:n$9$k(BC$B8@8l$G=q$+$l$?%f!<%6Dj5A4X?t$G$9(B(Jehan-Guillaume (ioguix) de Rorthais)
+ <li>$B4X?t$r%"%s%$%s%9%H!<%k$9$k$?$a$N(BSQL$B%U%!%$%k$r(Bsql/$B$KDI2C$7$^$7$?(B(Nicolas Thauvin)
</ul>
</p>
@@ -3923,6 +3930,14 @@ pgpool-II$B$N%A%e!<%H%j%"%k$O(B<a href="tutorial-ja.html">$B$3$3(B<a/>$B$K$
<li>pgpool-II$BFbIt$G;HMQ$9$k%7%9%F%`%+%?%m%0%-%c%C%7%e$N%5%$%:$r(B32$B$+$i(B128$B$KA}$d$7$^$7$?!#$3$l$O(B"unnamed prepared statement does not exist"$B%(%i!<$r7Z8:$9$k8z2L$,$"$j$^$9(B(Tatsuo, Kitagawa)
<li>pcp_connect()$B4X?t$GFs=E(Bfree()$B$r9T$&%P%0$r=$@5$7$^$7$?!#%Q%C%A$O(BJehan-Guillaume (ioguix) de Rorthais$B$5$s$+$iD:$-$^$7$?(B(Tatsuo)
<li>PQfinish()$B4X?t$r8m$C$F;HMQ$7$F$$$k(Bstart_recoery()$B$N%P%0$r=$@5$7$^$7$?(B(Tatsuo)
+ <li>raw$B%b!<%I$G%N!<%I$rI|5"$5$;$?$H$-$K%N!<%I$N>uBV$,99?7$5$l$J$$%P%0$r=$@5$7$^$7$?(B(Guillaume Lelarge)
+ <li>$B%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s%b!<%I$K$*$1$k%l%W%j%1!<%7%g%sCY1d$N7W;;$,4V0c$C$F$$$?$N$r=$@5$7$^$7$?(B(Tatsuo)
+ <li>$B%U%'%$%k%*!<%P!<$N%m%0%a%C%;!<%8$K$*$1$k8m$C$?4X?tL>(B"notice_backend_error"$B$r!"@5$7$$$b$N(B"degenerate_backend_set"$B$KCV$-49$($^$7$?(B(Tatsuo)
+ <li>pgpool.conf$B2r@O8e$NITMW$J%m%0=PNO$r:o=|$7$^$7$?(B(Tatsuo)
+ <li>md5$BG'>ZJ}<0$r:NMQ$7$F%G!<%b%s$H$7$F<B9T$7$?$H$-$N%O%s%0%"%C%W$r=$@5$7$^$7$?!#%Q%C%A$O(BNicolas Thauvin$B$5$s$+$iD:$-$^$7$?(B(Tatsuo)
+ <li>$B3HD%Ld$$9g$o$;%W%m%H%3%k$G(BSQL$BJ8$,=PNO$5$l$k$h$&$K!"(Blog_per_node_statement$B$r=$@5$7$^$7$?!#$3$l$O0JA0$OF0:n$7$F$$$^$7$?$,!"(B3.0$B$GF0:n$7$J$/$J$C$F$$$^$7$?(B(Kitagawa)
+ <li>$B%/%i%$%"%s%H$N%"%$%I%k;~4V$,(Bclient_idle_limit$B$KC#$7$?$H$-$K!"%U%m%s%H%(%s%I$KAw?.$5$l$k@5$7$/$J$$%(%i!<%a%C%;!<%8$r=$@5$7$^$7$?(B(Tatsuo)
+ <li>pool_status$B$N(B"backend status"$B%Q%i%a!<%?$NL>A0$r@5$7$/=$@5$7$^$7$?!#%9%Z!<%9$r(B'_'$B$KCV$-49$($^$7$?(B(Guillaume Lelarge)
</ul>
</p>
@@ -3934,6 +3949,11 @@ pgpool-II$B$N%A%e!<%H%j%"%k$O(B<a href="tutorial-ja.html">$B$3$3(B<a/>$B$K$
<li>$BFI$_$d$9$$$h$&$K(Bpgpool.conf$B$N%5%s%W%k%U%!%$%k$r:F9=@.$7$^$7$?(B(Gleu)
<li>pgpool-II$B%^%K%e%"%k$N$9$Y$F$N%Q%i%a!<%?$K(B‹a name="..."›$B%?%0$rDI2C$7$^$7$?(B(Haruka Takatsuka)
<li>pgpool-II$B%^%K%e%"%k$N%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s$K$*$1$k%*%s%i%$%s%j%+%P%j$N@bL@$r2~A1$7$^$7$?(B(Tatsuo)
+ <li>$B%9%H%j!<%_%s%0%l%W%j%1!<%7%g%s%b!<%I$K$*$1$k%l%W%j%1!<%7%g%sCY1d$r%A%'%C%/$9$k$?$a$N4X?t$rJQ99$7$^$7$?!#8=:_!"(Bpgpool$B$O(Bpg_last_xlog_receive_location()$B$NBe$o$j$K(Bpg_last_xlog_replay_location()$B$r;HMQ$7$^$9!#=$@5$O(BAnton Yuzhaninov$B$5$s$NDs0F$K$h$k$b$N$G$9(B(Tatsuo)
+ <li>$B%+%i%`$N%G%U%)%k%HCM$KG$0U$N<0$r;XDj$7$F$b%?%$%`%9%?%s%W=q$-49$($,F0:n$9$k$h$&$K$7$^$7$?!#0JA0$O!"(Bnow()$B$,4^$^$l$F$$$k$b$N$r8!CN$9$k$H!"C1=c$K$=$l$r(Bnow()$B$GCV$-49$($F$^$7$?!#$3$l$O!"%G%U%)%k%HCM$N8m$C$?=q$-49$($r0z$-5/$3$7$^$9!#Nc$($P!"(Btimezone('utc'::text, now())$B$G$9!#$7$+$7!"$3$l$O4J0W%W%m%H%3%k$N$_$X$NE,MQ$G$"$k$3$H$KCm0U$7$F$/$@$5$$!#3HD%%W%m%H%3%k(B($BNc$($P(BJava, PHP PDO)$B$^$?$O!"(BSQL$B$N(B"PREPARE"$B$K$O$^$@E,MQ$5$l$F$$$^$;$s(B(Tatsuo)
+ <li>$B%l%W%j%1!<%7%g%sCY1d$N%A%'%C%/$K<:GT$7$?$H$-$K=PNO$5$l$k%(%i!<%a%C%;!<%8$r2~NI$7$^$7$?(B(Nicolas Thauvin)
+ <li>$B%(%i!<%a%C%;!<%8(B"do_md5: read_password_packet failed"$B$r%G%P%C%0%l%Y%k$K$7$^$7$?(B(Kitagawa)
+ <li>$B%5%s%W%k$N@_Dj%U%!%$%k$N(Bblack_function_list$B$K(Bcurrval()$B$H(Blastval()$B$rDI2C$7$^$7$?!#$b$7$=$l$i$,%m!<%I%P%i%s%9$5$l$k$H!"(Bnextval()$B$d(Bsetval()$B$N7k2L$,%9%l!<%V$KH?1G$5$l$kA0$K(Bcurrval()$B$^$?$O(Blastval()$B$,8F$P$l$k$3$H$,$"$j$^$9(B(Tatsuo)
</ul>
</p>
[parent: d5a9313f6298]