[Pgpool-general] pgpool-II 3.1 released

2011-09-08 Thread Toshihiro Kitagawa
Pgpool Global Development Group is pleased to announce the
availability of pgpool-II 3.1.

pgpool-II 3.1 can be downloaded here:

http://pgfoundry.org/frs/download.php/

pgpool-II 3.1 has many new features and enhancements.

Users of prior versions of pgpool-II should be able to upgrade to
pgpool-II 3.1 without much pain. Especially pgpool-II 3.0.x users
should be able to migrate to 3.1 without changing pgpool.conf(it is
recommended to use new pgpool.conf, though).

However be warned that pgpool-II 3.1 has some incompatible changes.
Please look into the documents for more details.

Attached are release note of pgpool-II 3.1.

---
3.1 (hatsuiboshi) 2011/09/08

* Version 3.1

This is the first version of pgpool-II 3.1 series.
That is, a major version up from 3.0 series.

* 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)

- 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
  follows the convention of libpq interface. Patch contributed by
  Jehan-Guillaume (ioguix) de Rorthais.

- Now pgpool_walrecrunning() was not used. pgpool-II used to consider
  the node that is promoted a primary node using the function. Now,
  pgpool-II waits for completing of the promotion to primary node
  because it did not work as we intended. But we still have a problem
  that pgpool-II waits while recovery_timeout, when there is no primary
  node(Kitagawa)

- Add node_id to each PostgreSQL DB node info in the output of
  show pool_nodes(Jean-Paul Argudo)

- Change the handling of sequence functions(nextval, setval) so that
  they completely obey setting of black/white_function_list. They were
  always handled as write functions before(Kitagawa)

* New features

- Add syslog support. Patch contributed by Gilles Darold. Review and
  editing by Guillaume Lelarge.

- Adapt application_name introduced in PostgreSQL 9.0. When reusing
  connection, send application_name in the startup packet to backend
  and send parameter status to frontend(Tatsuo)

- Add relcache_expire directive to control the expiration of the
  internal system catalog cache. ALTER TABLE might make these
  cache values obsoleted and the new directive will make the risk
  lower(Tatsuo).

- Add follow_master_command directive. This directive specifies a
  command to run in master/slave streaming replication only after
  a master failover. Patch contributed by Gilles Darold.

- Add pcp_promote_node command. This command promotes a new master
  node to pgpool-II. This can use in master/slave streaming replication
  only. Patch contributed by Gilles Darold.

- Add pcp_pool_status command which produces similar output of show
  pool_status. Also C API for this command is added. Patch
  contributed by Jehan-Guillaume (ioguix) de Rorthais.

- 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(Nicolas Thauvin)

- Add sr_check_period, sr_check_user and sr_check_password directives.
  These are used for streaming replication delay checking and
  determining primary node(Tatsuo)

- 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 Simplified Chinese version of documents(Huang Jian, Sun Peng)

- Add SQL files to uninstall functions to sql/(Nicolas Thauvin)

- In master/slave mode, SELECTs to unlogged table execute only on
  master/primary(Kitagawa)

* Bug fixes

- Fix bug which cannot use the cursors of JDBC driver on standby
  node. The transaction commands come to be sent to all nodes by
  this fix in master/slave mode(Kitagawa)

- Fix bug with the handling of empty queries. The empty queries
  come to be handled the same as SELECT queries. This fix allows
  load-balance after the 

Re: [Pgpool-general] pgpool-II 3.1 released

2011-09-08 Thread Toshihiro Kitagawa
Sorry,

pgpool-II 3.1 can be downloaded here:

http://pgfoundry.org/frs/download.php/3114/pgpool-II-3.1.tar.gz

On Thu, 8 Sep 2011 21:30:38 +0900
Toshihiro Kitagawa kitag...@sraoss.co.jp wrote:

 Pgpool Global Development Group is pleased to announce the
 availability of pgpool-II 3.1.
 
 pgpool-II 3.1 can be downloaded here:
 
 http://pgfoundry.org/frs/download.php/
 
 pgpool-II 3.1 has many new features and enhancements.
 
 Users of prior versions of pgpool-II should be able to upgrade to
 pgpool-II 3.1 without much pain. Especially pgpool-II 3.0.x users
 should be able to migrate to 3.1 without changing pgpool.conf(it is
 recommended to use new pgpool.conf, though).
 
 However be warned that pgpool-II 3.1 has some incompatible changes.
 Please look into the documents for more details.
 
 Attached are release note of pgpool-II 3.1.
 
 ---
 3.1 (hatsuiboshi) 2011/09/08
 
 * Version 3.1
 
 This is the first version of pgpool-II 3.1 series.
 That is, a major version up from 3.0 series.
 
 * 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)
 
 - 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
   follows the convention of libpq interface. Patch contributed by
   Jehan-Guillaume (ioguix) de Rorthais.
 
 - Now pgpool_walrecrunning() was not used. pgpool-II used to consider
   the node that is promoted a primary node using the function. Now,
   pgpool-II waits for completing of the promotion to primary node
   because it did not work as we intended. But we still have a problem
   that pgpool-II waits while recovery_timeout, when there is no primary
   node(Kitagawa)
 
 - Add node_id to each PostgreSQL DB node info in the output of
   show pool_nodes(Jean-Paul Argudo)
 
 - Change the handling of sequence functions(nextval, setval) so that
   they completely obey setting of black/white_function_list. They were
   always handled as write functions before(Kitagawa)
 
 * New features
 
 - Add syslog support. Patch contributed by Gilles Darold. Review and
   editing by Guillaume Lelarge.
 
 - Adapt application_name introduced in PostgreSQL 9.0. When reusing
   connection, send application_name in the startup packet to backend
   and send parameter status to frontend(Tatsuo)
 
 - Add relcache_expire directive to control the expiration of the
   internal system catalog cache. ALTER TABLE might make these
   cache values obsoleted and the new directive will make the risk
   lower(Tatsuo).
 
 - Add follow_master_command directive. This directive specifies a
   command to run in master/slave streaming replication only after
   a master failover. Patch contributed by Gilles Darold.
 
 - Add pcp_promote_node command. This command promotes a new master
   node to pgpool-II. This can use in master/slave streaming replication
   only. Patch contributed by Gilles Darold.
 
 - Add pcp_pool_status command which produces similar output of show
   pool_status. Also C API for this command is added. Patch
   contributed by Jehan-Guillaume (ioguix) de Rorthais.
 
 - 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(Nicolas Thauvin)
 
 - Add sr_check_period, sr_check_user and sr_check_password directives.
   These are used for streaming replication delay checking and
   determining primary node(Tatsuo)
 
 - 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 Simplified Chinese version of documents(Huang Jian, Sun Peng)
 
 - Add SQL files to uninstall functions to sql/(Nicolas Thauvin)
 
 - In master/slave mode, SELECTs to unlogged table execute only on
   master/primary(Kitagawa)
 
 * Bug fixes
 
 - Fix bug which 

Re: [Pgpool-general] pgpool-II 3.1 released

2011-09-08 Thread Lonni J Friedman
On Thu, Sep 8, 2011 at 5:30 AM, Toshihiro Kitagawa
kitag...@sraoss.co.jp wrote:
 - 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)

Is there a sql script somewhere for creating this table with the
correct/expected schema?
___
Pgpool-general mailing list
Pgpool-general@pgfoundry.org
http://pgfoundry.org/mailman/listinfo/pgpool-general


Re: [Pgpool-general] pgpool-II 3.1 released

2011-09-08 Thread Josh Berkus
Guys,

First of all, congratulations!

I was testing the beta, but didn't get as far as any bug reports before
you released the final!  You guys are way too fast for me.

 - Now pgpool_walrecrunning() was not used. pgpool-II used to consider
   the node that is promoted a primary node using the function. Now,
   pgpool-II waits for completing of the promotion to primary node
   because it did not work as we intended. But we still have a problem
   that pgpool-II waits while recovery_timeout, when there is no primary
   node(Kitagawa)

Does this mean that walrecrunning was removed from the code?

-- 
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com
___
Pgpool-general mailing list
Pgpool-general@pgfoundry.org
http://pgfoundry.org/mailman/listinfo/pgpool-general


Re: [Pgpool-general] pgpool-II 3.1 released

2011-09-08 Thread Josh Berkus
On 9/8/11 3:20 PM, Josh Berkus wrote:
 - Now pgpool_walrecrunning() was not used. pgpool-II used to consider
the node that is promoted a primary node using the function. Now,
pgpool-II waits for completing of the promotion to primary node
because it did not work as we intended. But we still have a problem
that pgpool-II waits while recovery_timeout, when there is no primary
node(Kitagawa)
 Does this mean that walrecrunning was removed from the code?

... apparently not.  Now I'm even more confused: am I supposed to be
installing walrecrunning to my databases, or not?

-- 
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com
___
Pgpool-general mailing list
Pgpool-general@pgfoundry.org
http://pgfoundry.org/mailman/listinfo/pgpool-general


Re: [Pgpool-general] pgpool-II 3.1 released

2011-09-08 Thread Tatsuo Ishii
 On 9/8/11 3:20 PM, Josh Berkus wrote:
 - Now pgpool_walrecrunning() was not used. pgpool-II used to consider
the node that is promoted a primary node using the function. Now,
pgpool-II waits for completing of the promotion to primary node
because it did not work as we intended. But we still have a problem
that pgpool-II waits while recovery_timeout, when there is no primary
node(Kitagawa)
 Does this mean that walrecrunning was removed from the code?
 
 ... apparently not.

The only place using walrecrunning is in main.c and was ifdef out, I
believe.

 Now I'm even more confused: am I supposed to be
 installing walrecrunning to my databases, or not?

You don't need to install pgpool_walrecrunning any more.
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp
___
Pgpool-general mailing list
Pgpool-general@pgfoundry.org
http://pgfoundry.org/mailman/listinfo/pgpool-general