[pgpool-general: 2748] Re: pgpool-II 3.3.3, 3.2.8, 3.1.11, 3.0.15, and pgpoolAdmin 3.3.1 released

Yugo Nagata nagata at sraoss.co.jp
Thu Apr 10 18:33:36 JST 2014


Hi,

I'm sorry for replying late.

On Mon, 7 Apr 2014 14:05:52 -0700
Alexandru Cardaniuc <cardaniuc at gmail.com> wrote:

> Is it related to the following?
> * Fix to output error message when wd_escalation_command fails with exit
>   code other than 0 (Yugo Nagata) [3.3]
> 

Yes, this commit is. The error code to be ignored is still regarded as falure.
Here is a patch. Could you please try this?

> 
> On Wed, Mar 26, 2014 at 12:08 AM, Yugo Nagata <nagata at sraoss.co.jp> wrote:
> 
> > On Tue, 25 Mar 2014 00:18:07 -0700
> > Alexandru Cardaniuc <cardaniuc at gmail.com> wrote:
> >
> > > Also, with version 3.3.2 when I would bring pgpool down on the primary
> > node
> > > and watchdog would bring delegate_IP up on the secondary node I would see
> > > in the pgpool.log:
> > >
> > > 2014-03-25 06:27:31 LOG:   pid 6974: wd_escalation: escalated to master
> > > pgpool successfully
> > >
> > > And the delegate_IP will be up correctly.
> > >
> > > Now with version 3.3.3 when that same thing happens, I get in pgpool.log:
> > >
> > > 2014-03-25 05:11:58 LOG:   pid 13889: wd_escalation: escalating to master
> > > pgpool
> > > 2014-03-25 05:11:58 DEBUG: pid 13889: exec_ifconfig: wait() failed at
> > > errno: 10
> > > 2014-03-25 05:11:58 ERROR: pid 13889: wd_IP_up: ifconfig up failed
> > > 2014-03-25 05:11:58 DEBUG: pid 13889: wd_declare: send the packet to
> > > declare the new master
> > > 2014-03-25 05:11:58 LOG:   pid 13889: wd_escalation: escalated to master
> > > pgpool with some errors
> > >
> > > But when I check with ifconfig, the delegate_IP was properly brought up
> > > with ifconfig. Is that a new bug with pgpool 3.3.3?
> >
> > Errors if_cmd_up command are checked in 3.3.3. However, wait()'s error of
> > errno:10 (ECHILD) migth have to be ignored. I'll see detail and fix it.
> >
> > >
> > >
> > > I am not subscribed to pgpool-hackers, so if you respond, please include
> > > pgpool-general as well.
> > >
> > > Sincerely,
> > > Alexandru
> > >
> > > On Mon, Mar 24, 2014 at 8:49 PM, Alexandru Cardaniuc <
> > cardaniuc at gmail.com>wrote:
> > >
> > > > Looks like there is a typo in pgpool.spec file.
> > > >
> > > > When building:
> > > > + ./configure --build=x86_64-redhat-linux-gnu
> > > > --host=x86_64-redhat-linux-gnu --target=x86_64-redhat-linux-gnu
> > > > --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin
> > > > --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share
> > > > --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec
> > > > --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man
> > > > --infodir=/usr/share/info
> > --with-pgsql-includedir=/usr/pgsql-8.4/include/
> > > > --with-pgsql-lib=/usr/pgsql-8.4/lib --disable-static --with-pam
> > > > --disable-rpath --sysconfdir=/etc/pgpool-II/
> > > > configure: WARNING: unrecognized options: --with-pgsql-lib
> > > >
> > > > Instead of:
> > > > %build
> > > > %configure --with-pgsql-includedir=%{pghome}/include/ \
> > > >            --with-pgsql-lib=%{pghome}/lib \
> > > >            --disable-static --with-pam --disable-rpath \
> > > >            --sysconfdir=%{_sysconfdir}/pgpool-II/
> > > >
> > > > Should be:
> > > > %build
> > > > %configure --with-pgsql-includedir=%{pghome}/include/ \
> > > >            --with-pgsql-libdir=%{pghome}/lib \
> > > >            --disable-static --with-pam --disable-rpath \
> > > >            --sysconfdir=%{_sysconfdir}/%{name}/
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > On Mon, Mar 24, 2014 at 4:15 PM, Yugo Nagata <nagata at sraoss.co.jp>
> > wrote:
> > > >
> > > >> Pgpool Global Development Group is pleased to announce the
> > availability
> > > >> of pgpool-II 3.3.3, 3.2.8, 3.1.11, 3.0,15, and pgpoolAdmin 3.3.1.
> > These
> > > >> are the latest stable minor versions of each major versions of
> > pgpool-II.
> > > >>
> > > >> You can download the source code, installer, RPMs from:
> > > >> http://pgpool.net/mediawiki/index.php/Downloads
> > > >>
> > > >>
> > > >>
> > ===============================================================================
> > > >> pgpool-II 3.3.3, 3.2.8, 3.1.11, 3.0,15
> > > >>
> > > >>
> > ===============================================================================
> > > >>
> > > >> * installer: Fix bug that install of pgpool-II RPM fails (Yugo Nagata)
> > > >>   [3.3][3.2][3.1][3.0]
> > > >>
> > > >> * installer: Fix to set up passwordless SSH from apache at localhost to
> > > >>   postgres at localhost (Yugo Nagata) [3.3]
> > > >>
> > > >> * Fix bug that restarted pgpool's watchdog status is regarded as down
> > > >>   (Yugo Nagata) [3.3]
> > > >>
> > > >> * doc: Add mention about "listen queue" and how to increase the
> > "backlog"
> > > >>   in the num_init_children section. (Tatsuo Ishii)
> > [3.3][3.2][3.1][3.0]
> > > >>
> > > >> * Fix bug that watchdog status goes down even when only one of trusted
> > > >>   servers get unpingable (Yugo Nagata) [3.3][3.2]
> > > >>
> > > >> * Fix bad performance of unlogged tables detection code. (Tatsuo
> > Ishii)
> > > >>   [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Pointed out at [pgpool-hackers: 435][[pgpool-general:2325].
> > > >>
> > > >> * Fix primary node detection logic. (Tatsuo Ishii)
> > [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   There's a possibility that primary node is not detected. This
> > happens
> > > >>   in following situation.  node 0: primary, node 1: standby. Node 0
> > goes
> > > >>   down. Health checking detects the fact but local status is not
> > updated
> > > >>   yet. Primary node finding (find_primary_node) runs. Node 0's status
> > is
> > > >>   yet healthy. Because find_primary_node fails to connect to node 0,
> > it
> > > >>   immediately returns -1 and fails to find that fact that node 1 is
> > now
> > > >>   primary.
> > > >>
> > > >>   Fix is just continuing to look for primary node when fails to
> > connect
> > > >>   to a node.
> > > >>
> > > >>   Per [pgpool-general: 2409].
> > > >>
> > > >> * Add raw mode support to pgpool_setup. (Tatsuo Ishii) [3.3]
> > > >>
> > > >> * test: Integrate jdbc test to regression test. (Tatsuo Ishii) [3.3]
> > > >>
> > > >> * Fix jdbc DML fails when operated in raw mode and auto commit is off.
> > > >>   (Tatsuo Ishii) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   This is reported in bug #92.
> > > >>
> > > >> * Fix to output error message when wd_escalation_command fails with
> > exit
> > > >>   code other than 0 (Yugo Nagata) [3.3]
> > > >>
> > > >>   This is suggested by Sergey Arlashin in [pgpool-general: 2457].
> > > >>
> > > >> * test: Add new regression test for query cache. (Tatsuo Ishii)
> > [3.3][3.2]
> > > >>
> > > >> * Fix query cache bug with extended protocol. (Tatsuo Ishii)
> > [3.3][3.2]
> > > >>
> > > >>   SELECT retrieves outdated cache even DML was executed in an
> > expilicit
> > > >>   transaction. The bug had been there since in memory query cache was
> > > >>   born. Per [pgpool-general-jp: 1252].
> > > >>
> > > >> * Add missing entries "relcache_size" and "check_temp_table" to show
> > > >>   pool_status (Tatsuo Ishii) [3.3][3.2]
> > > >>
> > > >> * Fix to output error message when if_up_cmd fails. (Yugo Nagata)
> > [3.3]
> > > >>
> > > >>   This is suggested by Sergey Arlashin in [pgpool-general: 2457].
> > > >>
> > > >> * Avoid to send queries to unrelated nodes in streaming replication
> > mode.
> > > >>   (Tatsuo Ishii) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Pgpool-II sends certain queries, such as BEGIN, END and SET
> > commands to
> > > >>   all of DB nodes. However in streaming replication mode, only primary
> > > >>   node and at most one standby node are only concerned (if primacy
> > node
> > > >>   is selected as the load balance node, only 1 node is concerned).
> > > >>
> > > >>   See [pgpool-hackers: 464] for more details.
> > > >>
> > > >> * Fix possible buffer overrun problem and memory leak. (Tatsuo Ishii)
> > > >>   [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Per Coverity 1111465 and 1111482.
> > > >>
> > > >> * Fix possible buffer overrun. (Tatsuo Ishii) [3.3][3.2][3.1]
> > > >>
> > > >>   Replace strcpy() with strlcpy(). Per Coverity report 1111478,
> > 1111480,
> > > >>   1111481.
> > > >>
> > > >> * Add dubug messages for analyzing errors in if_up_cmd (Yugo Nagata)
> > > >>   [3.3]
> > > >>
> > > >> * Fix freeing NULL. (Tatsuo Ishii) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Per Coverity 1111384.
> > > >>
> > > >> * Do not enable query cache on materialized views. (Tatsuo Ishii)
> > > >>   [3.3][3.2]
> > > >>
> > > >>   Per bug #95.
> > > >>
> > > >> * Fix memory leak. (Tatsuo Ishii) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Per Coverity 1111446.
> > > >>
> > > >> * Fix a segmentation fault in parallel mode with system_db_hostname is
> > > >>   empty (Yugo Nagata) [3.3][3.2][3.1][3.0]
> > > >>
> > > >> * Fix to output debug messages in processing pgpool.conf with -d
> > option
> > > >>   (Yugo Nagata) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Previously, some debug messages in pool_get_config() ware not output
> > > >>   even when -d option was used.
> > > >>
> > > >> * Fix JDBC exception of prepared statement including now() in
> > > >>   replication mode (Yugo Nagata) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   With JDBC, when a prepared statement is executed more than
> > > >>   PrepareThreshold times, the statement is named and Describe message
> > > >>   is sent after Parse. With named statement, pgpool rewrite now() to
> > > >>   parameter in replication mode. Hence, rewritten query has additonal
> > > >>   parameter than original. In this case, ParameterDescription message
> > > >>   sent to frontend (response of Describe) should include OIDs of the
> > > >>   same number os original query's parameters. Otherwize, JDBC throws
> > > >>   ArrayIndexoutOfBoundsException.
> > > >>
> > > >>   This is reported in [pgpool-general-jp: 1192].
> > > >>
> > > >> * Fix backend error of prepared statement about table which has
> > > >>   column whoes default value is now() in replication mode (Yugo
> > Nagata)
> > > >>    [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   When pgpool parses a named prepared statement with default now(),
> > > >>   timestamps are replaced to additional parameters. So, Bind message
> > also
> > > >>   should inclued additional parameter format codes. However, when the
> > > >>   number of original parameter was one, pgpool didn't handle this.
> > This
> > > >>   caused a error like "incorrect binary data format in bind parameter
> > 2".
> > > >>
> > > >> * test: Fix a bug of regression test of JDBC that shows OK even when
> > > >>   this fails (Yugo Nagata) [3.3]
> > > >>
> > > >> * test: Add a new regression test for JDBC's PrepareThreshold
> > > >>  (Yugo Nagata) [3.3]
> > > >>
> > > >> * doc: Add description about parallel mode doesn't support PREPARE
> > > >>  (Yugo Nagata) [3.3][3.2][3.1][3.0]
> > > >>
> > > >>   Per bug #93
> > > >>
> > > >>
> > > >>
> > ===============================================================================
> > > >> pgpoolAdmin 3.3.1
> > > >>
> > > >>
> > ===============================================================================
> > > >>
> > > >> * Fix a bug that watchdug status is shown as "Unknown" when it's
> > "Down"
> > > >> (Yugo Nagata)
> > > >>
> > > >> * Fix a bug that restart of PostgreSQL doesn't work (Yugo Nagata)
> > > >>
> > > >> * Fix to get properly if the login user is a super user or not on
> > backend
> > > >>   nodes. (Nozomi Anzai)
> > > >>
> > > >>   This problem could be occured especially when he isn't a super user.
> > > >>   Per [pgpool-general: 2340].
> > > >>
> > > >> * Fix that pgpool_pgctl can be executed only when the login user is
> > super
> > > >>   user in backend nodes.(Nozomi Anzai)
> > > >>
> > > >>   Previously, any login user was able to try to execute pgpool_pgctl()
> > > >>   which could stop/restart/reload a backend node even if he was not a
> > > >> super
> > > >>   user. Also pgpool_pgctl() was executed by sr_check_user or
> > > >> health_check_user,
> > > >>   but it wasn't reasonable. This update is that buttons of
> > > >> stop/restart/reload
> > > >>   are disabled when the login user isn't a super user and that
> > > >> pgpool_pg_ctl()
> > > >>   is executed by login user instead of sr_check_user or
> > health_check_user
> > > >>   who don't have to be non-superuser. Per [pgpool-general: 2338].
> > > >>
> > > >> --
> > > >> Yugo Nagata <nagata at sraoss.co.jp>
> > > >> _______________________________________________
> > > >> pgpool-general mailing list
> > > >> pgpool-general at pgpool.net
> > > >> http://www.pgpool.net/mailman/listinfo/pgpool-general
> > > >>
> > > >
> > > >
> > > >
> > > > --
> > > > Sincerely yours,
> > > > Alexandru Cardaniuc
> > > >
> > >
> > >
> > >
> > > --
> > > Sincerely yours,
> > > Alexandru Cardaniuc
> >
> >
> > --
> > Yugo Nagata <nagata at sraoss.co.jp>
> >
> 
> 
> 
> -- 
> Sincerely yours,
> Alexandru Cardaniuc


-- 
Yugo Nagata <nagata at sraoss.co.jp>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: if_up_error.patch
Type: text/x-diff
Size: 843 bytes
Desc: not available
URL: <http://www.sraoss.jp/pipermail/pgpool-general/attachments/20140410/40e037ce/attachment-0001.bin>


More information about the pgpool-general mailing list