pgpool1.git
16 years agoFix hang up in Execute. master
Yoshiyuki Asaba [Thu, 8 May 2008 04:59:26 +0000 (04:59 +0000)]
Fix hang up in Execute.

We sended a syntax error query to abort a transaction if
replicate_select was true. However, the query was sended over Query
message.

Patch contributed by Kenichi Sawada.

17 years agoFixed hang up in master/slave mode.
Yoshiyuki Asaba [Wed, 19 Mar 2008 08:18:21 +0000 (08:18 +0000)]
Fixed hang up in master/slave mode.

17 years agoFix hang up after processing "show pool_status".
Yoshiyuki Asaba [Mon, 3 Mar 2008 06:25:51 +0000 (06:25 +0000)]
Fix hang up after processing "show pool_status".
Per report by ISHIDA Akio.

17 years agoFix asynchronous query handling.
Yoshiyuki Asaba [Tue, 26 Feb 2008 03:59:02 +0000 (03:59 +0000)]
Fix asynchronous query handling.

When ReadyForQuery message was received, pgpool set off loadbalancing
flag, internal transaction flag and so on. If client sended a Query
message before receiving the ReadyForQuery message, pgpool reported
error message.

So, we block the Query message while backend nodes process a query.

17 years agoAdd error checking.
Yoshiyuki Asaba [Tue, 26 Feb 2008 02:21:15 +0000 (02:21 +0000)]
Add error checking.

17 years agohealth_check_timeout did not work correctly. The bug was introduced in
Yoshiyuki Asaba [Tue, 26 Feb 2008 01:45:17 +0000 (01:45 +0000)]
health_check_timeout did not work correctly. The bug was introduced in
V3.4. Report and patch by Kenichi Sawada.

17 years agoPolling signals per 3 secs when health check is disabled.
Yoshiyuki Asaba [Tue, 19 Feb 2008 04:28:23 +0000 (04:28 +0000)]
Polling signals per 3 secs when health check is disabled.

17 years agoFix wrong loop condition in pool_sleep().
Yoshiyuki Asaba [Thu, 14 Feb 2008 04:02:28 +0000 (04:02 +0000)]
Fix wrong loop condition in pool_sleep().

17 years agoImprove buffering algorithm in pool_write().
Yoshiyuki Asaba [Wed, 5 Dec 2007 08:10:31 +0000 (08:10 +0000)]
Improve buffering algorithm in pool_write().

17 years agoFix insert_lock with extended query protocol.
Yoshiyuki Asaba [Tue, 6 Nov 2007 09:08:53 +0000 (09:08 +0000)]
Fix insert_lock with extended query protocol.

17 years agoIgnore white space in need_insert_lock().
Yoshiyuki Asaba [Fri, 2 Nov 2007 09:27:52 +0000 (09:27 +0000)]
Ignore white space in need_insert_lock().

17 years agoCheck return value of pool_flush().
Yoshiyuki Asaba [Fri, 26 Oct 2007 03:02:19 +0000 (03:02 +0000)]
Check return value of pool_flush().

17 years agoAdd redhat/* into EXTRA_DIST.
Yoshiyuki Asaba [Wed, 17 Oct 2007 02:28:59 +0000 (02:28 +0000)]
Add redhat/* into EXTRA_DIST.

17 years agoUpdate spec file to 3.4.1
Devrim GÜNDÜZ [Tue, 16 Oct 2007 13:02:51 +0000 (13:02 +0000)]
Update spec file to 3.4.1
Added new directory: redhat
Added Red Hat / Fedora init script and sysconfig file for pgpool

17 years agoAdd authentication_timeout
Yoshiyuki Asaba [Fri, 12 Oct 2007 06:52:11 +0000 (06:52 +0000)]
Add authentication_timeout

17 years agoAdd authentication_timeout into the result of "show pool_status".
Yoshiyuki Asaba [Fri, 12 Oct 2007 04:14:57 +0000 (04:14 +0000)]
Add authentication_timeout into the result of "show pool_status".

17 years agoDisable alarm before returning read_startup_packet().
Yoshiyuki Asaba [Fri, 12 Oct 2007 04:13:46 +0000 (04:13 +0000)]
Disable alarm before returning read_startup_packet().

17 years agoAdd new directive "authentication_timeout". The directive means the
Yoshiyuki Asaba [Thu, 11 Oct 2007 09:58:23 +0000 (09:58 +0000)]
Add new directive "authentication_timeout". The directive means the
maximum time in seconds to complete client authentication. The default
value is 60.

17 years agoCheck startup packet length. If the length is greater than 10,000
Yoshiyuki Asaba [Thu, 11 Oct 2007 08:18:16 +0000 (08:18 +0000)]
Check startup packet length. If the length is greater than 10,000
byte, pgpool reject the connection.

17 years agoRun autoconf V3_4_1
Tatsuo Ishii [Wed, 12 Sep 2007 04:23:29 +0000 (04:23 +0000)]
Run autoconf

17 years ago3.4.2 release note.
Yoshiyuki Asaba [Wed, 12 Sep 2007 04:22:52 +0000 (04:22 +0000)]
3.4.2 release note.

17 years ago3.4.1 release note in Japanese.
Yoshiyuki Asaba [Wed, 12 Sep 2007 04:08:05 +0000 (04:08 +0000)]
3.4.1 release note in Japanese.

17 years agoPrepare for 3.4.1
Yoshiyuki Asaba [Wed, 12 Sep 2007 03:54:34 +0000 (03:54 +0000)]
Prepare for 3.4.1

17 years ago* Fix handling Parse message.
Yoshiyuki Asaba [Wed, 29 Aug 2007 05:44:50 +0000 (05:44 +0000)]
* Fix handling Parse message.
Parse message including INSERT/UPDATE/DELETE query acquires
RowExclusiveLock. However pgpool did not wait a response from each
node. It was possible to occur deadlock problem.

17 years agoFix failover.
Yoshiyuki Asaba [Fri, 10 Aug 2007 03:57:44 +0000 (03:57 +0000)]
Fix failover.
When kind mismatch occured, pgpool detached master node.

17 years agoRemove compiler warning. V3_4
Yoshiyuki Asaba [Wed, 1 Aug 2007 04:25:40 +0000 (04:25 +0000)]
Remove compiler warning.

17 years agoReview release note.
Yoshiyuki Asaba [Wed, 1 Aug 2007 03:57:43 +0000 (03:57 +0000)]
Review release note.

17 years agoFix SEGV when connection_cache is true and replication_mode is false.
Yoshiyuki Asaba [Wed, 1 Aug 2007 03:54:56 +0000 (03:54 +0000)]
Fix SEGV when connection_cache is true and replication_mode is false.

17 years agoPrepare for 3.4
Yoshiyuki Asaba [Tue, 31 Jul 2007 08:53:45 +0000 (08:53 +0000)]
Prepare for 3.4

17 years agoFix memory leak in the following case.
Yoshiyuki Asaba [Fri, 27 Jul 2007 07:59:35 +0000 (07:59 +0000)]
Fix memory leak in the following case.
  - connect to template1 database
  - fail authentication

17 years agoAdd description for "replicate_select" directive.
Yoshiyuki Asaba [Fri, 27 Jul 2007 06:24:37 +0000 (06:24 +0000)]
Add description for "replicate_select" directive.

17 years agoRelease note for 3.4.
Yoshiyuki Asaba [Fri, 27 Jul 2007 05:45:16 +0000 (05:45 +0000)]
Release note for 3.4.

17 years agoUpdate release note.
Yoshiyuki Asaba [Fri, 27 Jul 2007 02:35:37 +0000 (02:35 +0000)]
Update release note.

17 years agoPrepare for 3.4
Yoshiyuki Asaba [Fri, 27 Jul 2007 02:02:30 +0000 (02:02 +0000)]
Prepare for 3.4

17 years agoSIGALRM handler didn't safe. Because it called non-reentrant functions.
Yoshiyuki Asaba [Thu, 26 Jul 2007 08:45:42 +0000 (08:45 +0000)]
SIGALRM handler didn't safe. Because it called non-reentrant functions.
We only set a flag in SIGALRM handler. Then we close expired
connections in safe places.

17 years agoAdd description of replicate_select parameter
Yoshiyuki Asaba [Thu, 26 Jul 2007 06:13:07 +0000 (06:13 +0000)]
Add description of replicate_select parameter

17 years agoAdd replicate_select value to the result of "SHOW pool_status" command.
Yoshiyuki Asaba [Thu, 26 Jul 2007 06:05:05 +0000 (06:05 +0000)]
Add replicate_select value to the result of "SHOW pool_status" command.

17 years agoV3.4 release note
Yoshiyuki Asaba [Thu, 26 Jul 2007 05:45:25 +0000 (05:45 +0000)]
V3.4 release note

17 years agoFix memory leak when connection slot is full.
Yoshiyuki Asaba [Thu, 26 Jul 2007 03:01:42 +0000 (03:01 +0000)]
Fix memory leak when connection slot is full.

17 years agoRun autoconf
Tatsuo Ishii [Thu, 26 Jul 2007 02:09:42 +0000 (02:09 +0000)]
Run autoconf

17 years agoFix typo.
Tatsuo Ishii [Thu, 26 Jul 2007 02:07:05 +0000 (02:07 +0000)]
Fix typo.

17 years agoFix hang up when a SELECT query has error inside transaction block. It
Yoshiyuki Asaba [Wed, 25 Jul 2007 07:01:05 +0000 (07:01 +0000)]
Fix hang up when a SELECT query has error inside transaction block. It
occurs only in simple query protocol. We reproduce the bug with the
following operation.

  BEGIN;
  SELECT * FROM non_exist_table; <-- ERROR
  SELECT 1;

17 years agoFix hang up and SEGV if Parse message contains a warning statement.
Yoshiyuki Asaba [Wed, 25 Jul 2007 06:42:40 +0000 (06:42 +0000)]
Fix hang up and SEGV if Parse message contains a warning statement.

  SELECT '\'';
  WARNING:  nonstandard use of \' in a string literal

If pgpool receives a warning message that is NoticeMessage('N') under
the extended query protocol, it reads a next message.

17 years agoDetect deadlock in do_command().
Yoshiyuki Asaba [Tue, 24 Jul 2007 08:04:41 +0000 (08:04 +0000)]
Detect deadlock in do_command().
When insert_lock was true, kind mismatch error occured.

17 years agoPrepare for 3.4
Yoshiyuki Asaba [Thu, 19 Jul 2007 05:30:25 +0000 (05:30 +0000)]
Prepare for 3.4

17 years agoAdd new parameter named "replication_select".
Yoshiyuki Asaba [Thu, 19 Jul 2007 05:29:57 +0000 (05:29 +0000)]
Add new parameter named "replication_select".

17 years ago- Update to 3.4
Devrim GÜNDÜZ [Wed, 18 Jul 2007 11:36:38 +0000 (11:36 +0000)]
- Update to 3.4
- Removed patches, they are now in upstream

17 years agoAdd new parameter named "replicate_select". Default value is 'false'.
Yoshiyuki Asaba [Wed, 18 Jul 2007 04:48:04 +0000 (04:48 +0000)]
Add new parameter named "replicate_select". Default value is 'false'.

If it is true, pgpool replicates SELECT queries when load balancing is
disabled. This is a old specification which was under V3.2.

If it is false, pgpool only sends them to the master node. This is a
current(V3.3) specification.

17 years agoFix the following bugs in master_slave mode && load_balance mode.
Yoshiyuki Asaba [Thu, 12 Jul 2007 03:48:22 +0000 (03:48 +0000)]
Fix the following bugs in master_slave mode && load_balance mode.
We force to replicate PREPARE and DEALLOCATE statement because of the case.

  PREPARE xx AS SELECT 1;
  EXECUTE xx;

If EXECUTE statement was load balanced, it occured the error.

  ERROR:  prepared statement "xx" does not exist

17 years agoflush output buffer when deadlock error occured in Execute().
Yoshiyuki Asaba [Wed, 11 Jul 2007 02:11:53 +0000 (02:11 +0000)]
flush output buffer when deadlock error occured in Execute().

17 years agoPrevious commit does not fix deadlock error in Execute().
Yoshiyuki Asaba [Wed, 11 Jul 2007 02:08:01 +0000 (02:08 +0000)]
Previous commit does not fix deadlock error in Execute().

17 years agoFixed kind mismatch error when deadlock error occured.
Yoshiyuki Asaba [Wed, 11 Jul 2007 01:40:17 +0000 (01:40 +0000)]
Fixed kind mismatch error when deadlock error occured.
The problem is the following senario.

  A: BEGIN:
  B: BEGIN;
  A: LOCK TABLE t1 IN SHARE ROW EXCLUSIVE MODE;
  B: LOCK TABLE t2 IN SHARE ROW EXCLUSIVE MODE;
  A: LOCK TABLE t2 IN SHARE ROW EXCLUSIVE MODE;
  B: LOCK TABLE t1 IN SHARE ROW EXCLUSIVE MODE;

Transaction "A" aborts on master node, but it completes on another
nodes. It causes wrong failover.

So pgpool checks deadlock error(code == '40P01') and sends error query
to another nodes.

17 years agoFix race condition between flag checking and signal blocking.
Yoshiyuki Asaba [Mon, 9 Jul 2007 05:12:21 +0000 (05:12 +0000)]
Fix race condition between flag checking and signal blocking.

Normally, this case solve to call pselect(2). But Linux's pselect(2)
is emulated by select(2) and sigprocmask(2). It contains this race.
So pgpool archieves using the self-pipe trick.

See 'man pselect' if you want to get more information.

17 years agoModify that pgpool checks signal flags *before* sleeping.
Yoshiyuki Asaba [Mon, 2 Jul 2007 04:04:26 +0000 (04:04 +0000)]
Modify that pgpool checks signal flags *before* sleeping.

17 years agoFix race condition between unsetting SIGCHLD flag and unblocking
Yoshiyuki Asaba [Fri, 29 Jun 2007 14:18:20 +0000 (14:18 +0000)]
Fix race condition between unsetting SIGCHLD flag and unblocking
SIGCHLD signal.

17 years agoFix SIGCHLD signal handling. Child processes are restarted in signal
Yoshiyuki Asaba [Wed, 20 Jun 2007 08:53:49 +0000 (08:53 +0000)]
Fix SIGCHLD signal handling. Child processes are restarted in signal
safe places.

17 years agoFix signal handling for failover. Failover operation is executed in
Yoshiyuki Asaba [Wed, 20 Jun 2007 08:23:26 +0000 (08:23 +0000)]
Fix signal handling for failover. Failover operation is executed in
signal safe places.

17 years agoFix typo EmptyQueryResponse message. pgpool hung up in EXECUTE command.
Yoshiyuki Asaba [Sat, 2 Jun 2007 00:51:54 +0000 (00:51 +0000)]
Fix typo EmptyQueryResponse message. pgpool hung up in EXECUTE command.
(Patch contributed by Kenichi Sawada)

17 years agopgpool did not failover when kind mismatch error occured using an
Yoshiyuki Asaba [Mon, 28 May 2007 01:26:12 +0000 (01:26 +0000)]
pgpool did not failover when kind mismatch error occured using an
extended query protocol. So if it occurs in Execute(), pgpool does
failover.

17 years agoAdd an error message.
Yoshiyuki Asaba [Tue, 22 May 2007 06:27:13 +0000 (06:27 +0000)]
Add an error message.

17 years agoAdd checking a message length is valid.
Yoshiyuki Asaba [Tue, 22 May 2007 06:21:30 +0000 (06:21 +0000)]
Add checking a message length is valid.
(Reported by Fujii Masao)

17 years agopgpool.pam is now installed as "share/pgpool/pgpool.pam"
User yamaguti [Mon, 21 May 2007 02:04:10 +0000 (02:04 +0000)]
pgpool.pam is now installed as "share/pgpool/pgpool.pam"

17 years agoPrepare for 3.3 V3_3
Yoshiyuki Asaba [Fri, 18 May 2007 05:40:27 +0000 (05:40 +0000)]
Prepare for 3.3

17 years agoVersion 3.3
Yoshiyuki Asaba [Fri, 18 May 2007 05:27:14 +0000 (05:27 +0000)]
Version 3.3

17 years agoadded an explanation about /*REPLICATION*/ .
User yamaguti [Fri, 18 May 2007 02:45:05 +0000 (02:45 +0000)]
added an explanation about /*REPLICATION*/ .

17 years agoResync to updated configure.in
Tatsuo Ishii [Thu, 17 May 2007 06:56:38 +0000 (06:56 +0000)]
Resync to updated configure.in

17 years agoUpdate flex generated file
Tatsuo Ishii [Thu, 17 May 2007 06:54:28 +0000 (06:54 +0000)]
Update flex generated file

17 years agoPAM service configuration sample file
User yamaguti [Thu, 17 May 2007 06:34:40 +0000 (06:34 +0000)]
PAM service configuration sample file

17 years agoadded a description about "log_hostname"
User yamaguti [Thu, 17 May 2007 05:38:04 +0000 (05:38 +0000)]
added a description about "log_hostname"

17 years agothese files will be updated soon. committing for the log purpose.
User yamaguti [Thu, 17 May 2007 04:53:27 +0000 (04:53 +0000)]
these files will be updated soon. committing for the log purpose.

17 years agoadded a comment about PAM.
User yamaguti [Thu, 17 May 2007 04:47:54 +0000 (04:47 +0000)]
added a comment about PAM.

17 years ago* changed "enable_pool_hba" to be true by default.
User yamaguti [Thu, 17 May 2007 04:46:47 +0000 (04:46 +0000)]
* changed "enable_pool_hba" to be true by default.

* install pgpool.pam for PAM configuration

* updated NEWS, ChangeLog, README*

17 years agoRun autoconf
Tatsuo Ishii [Thu, 17 May 2007 03:40:12 +0000 (03:40 +0000)]
Run autoconf

17 years agoAdd ps display changed.
Yoshiyuki Asaba [Thu, 17 May 2007 02:29:21 +0000 (02:29 +0000)]
Add ps display changed.

17 years agofixed the ps display to follow the order in PostgreSQL.
User yamaguti [Thu, 17 May 2007 02:05:50 +0000 (02:05 +0000)]
fixed the ps display to follow the order in PostgreSQL.
pgpool was showing

pgpool: database user host status

but PostgreSQL shows

postgres: user database host status

17 years agoPrepare for 3.3
Yoshiyuki Asaba [Tue, 15 May 2007 02:36:25 +0000 (02:36 +0000)]
Prepare for 3.3

17 years agoJapanese release note for 3.3
Yoshiyuki Asaba [Tue, 15 May 2007 02:34:04 +0000 (02:34 +0000)]
Japanese release note for 3.3

17 years agoDelay buffer flush in SimpleForwardToBackend().
Yoshiyuki Asaba [Tue, 15 May 2007 02:32:28 +0000 (02:32 +0000)]
Delay buffer flush in SimpleForwardToBackend().

17 years agoAdd handling nextval()/setval()
Yoshiyuki Asaba [Mon, 7 May 2007 04:06:57 +0000 (04:06 +0000)]
Add handling nextval()/setval()

18 years agoRetry connect() when it is interrupted by signal.
Yoshiyuki Asaba [Thu, 26 Apr 2007 05:14:53 +0000 (05:14 +0000)]
Retry connect() when it is interrupted by signal.

18 years agoEnhance that the query that begins with "SELECT nextval()" or "SELECT
Yoshiyuki Asaba [Fri, 20 Apr 2007 06:14:20 +0000 (06:14 +0000)]
Enhance that the query that begins with "SELECT nextval()" or "SELECT
setval()" are always replicated under replication mode.

Then, SELECT statements are only executed by MASTER node if
load_balance_mode is false. If need to replicate select statement, add
a comment in the begining of the query.

Example:
  SELECT foo() -> /*REPLICATION*/ SELECT foo()

18 years agoAdd description about -a option.
User yamaguti [Wed, 21 Feb 2007 12:16:05 +0000 (12:16 +0000)]
Add description about -a option.

18 years agoFixed compile error on FreeBSD 4.11.
Yoshiyuki Asaba [Wed, 21 Feb 2007 06:49:37 +0000 (06:49 +0000)]
Fixed compile error on FreeBSD 4.11.

18 years agoadded a hstrerror() function check so that a compiler on some
User yamaguti [Tue, 13 Feb 2007 08:06:32 +0000 (08:06 +0000)]
added a hstrerror() function check so that a compiler on some
platforms won't complain.

18 years agofixed a compilation error on FreeBSD 4.11 ([pgsql-jp: 38011]) reported
User yamaguti [Tue, 13 Feb 2007 07:17:31 +0000 (07:17 +0000)]
fixed a compilation error on FreeBSD 4.11 ([pgsql-jp: 38011]) reported
by Tom.

18 years ago- Add pgpool.pam file for pam authentication
Devrim GÜNDÜZ [Tue, 13 Feb 2007 07:11:36 +0000 (07:11 +0000)]
- Add pgpool.pam file for pam authentication
- configure with pam support. This is a bugfix for new hba auth.
- Removed vendor tag, per rh bugzilla #222797
- Update to latest release

18 years agopgpool *only* checks backend connection when connection pool is
Yoshiyuki Asaba [Mon, 12 Feb 2007 06:21:03 +0000 (06:21 +0000)]
pgpool *only* checks backend connection when connection pool is
reused.

18 years agoFixed to hang up in PREPARE TRANSACTION and EXECUTE command.
Yoshiyuki Asaba [Mon, 12 Feb 2007 06:19:37 +0000 (06:19 +0000)]
Fixed to hang up in PREPARE TRANSACTION and EXECUTE command.

18 years agoPrepare for 3.2 V3_2
Tatsuo Ishii [Sat, 10 Feb 2007 09:58:37 +0000 (09:58 +0000)]
Prepare for 3.2

18 years agoinclude ac_func_accept_argtypes.m4 to avoid configure error.
Tatsuo Ishii [Wed, 7 Feb 2007 09:57:58 +0000 (09:57 +0000)]
include ac_func_accept_argtypes.m4 to avoid configure error.
Patch made by Taiki Yamaguchi.

18 years agodelete a commented line about "aclocal -I ./"
User yamaguti [Tue, 6 Feb 2007 04:09:28 +0000 (04:09 +0000)]
delete a commented line about "aclocal -I ./"

18 years agoAdd checking socket state when connection pool is reused.
Yoshiyuki Asaba [Tue, 6 Feb 2007 02:11:07 +0000 (02:11 +0000)]
Add checking socket state when connection pool is reused.
If socket is closed, pgpool try to create new connection pool.

18 years agoDetach secondary server when "kind mismatch error" is detected
Tatsuo Ishii [Sat, 3 Feb 2007 04:56:18 +0000 (04:56 +0000)]
Detach secondary server when "kind mismatch error" is detected

18 years agoAdd support for log_hostname
Tatsuo Ishii [Sat, 3 Feb 2007 04:22:21 +0000 (04:22 +0000)]
Add support for log_hostname
Prepare for 3.2

18 years agoUpdate copyright and comments
Tatsuo Ishii [Sat, 3 Feb 2007 00:03:57 +0000 (00:03 +0000)]
Update copyright and comments

18 years agoshow frontend address in ps status.
Tatsuo Ishii [Fri, 2 Feb 2007 03:57:55 +0000 (03:57 +0000)]
show frontend address in ps status.
Also commit pool_config.c.

18 years agomodified pool_open and pool_close to suit with new variables for HBA.
User yamaguti [Thu, 1 Feb 2007 16:40:35 +0000 (16:40 +0000)]
modified pool_open and pool_close to suit with new variables for HBA.

18 years agoNew files and modifications to support client authentication (pool_hba).
User yamaguti [Thu, 1 Feb 2007 15:31:59 +0000 (15:31 +0000)]
New files and modifications to support client authentication (pool_hba).

18 years agoShow status via ps command like PostgreSQL
Tatsuo Ishii [Thu, 1 Feb 2007 13:33:26 +0000 (13:33 +0000)]
Show status via ps command like PostgreSQL
(ps_status.c and strlcpy.c are stolen from PostgreSQL)

18 years agoFixed SIGSEGV using DBD-Pg.
Yoshiyuki Asaba [Mon, 22 Jan 2007 11:36:51 +0000 (11:36 +0000)]
Fixed SIGSEGV using DBD-Pg.
Reported by Kenichi Sawada.