2010-02-07 16:04  t-ishii

	* pool_process_query.c: Fix read_kind_from_backend so that it
	  properly checks the return value from pool_extract_error_message.

2010-02-07 12:08  t-ishii

	* pool_process_query.c: Enhance read_kind_from_backend.  If kind
	  mismatch error occurs and command is DEALLOCATE, print original
	  prepared query which DEALLOCATE tries to delete.

2010-02-07 12:05  t-ishii

	* pool_proto_modules.c: Fix SimpleQuery if DEALLOCATE received,
	  register pending function.

2010-02-07 12:04  t-ishii

	* main.c: Fix I/O check in reading/writing status file.

2010-02-04 09:31  t-ishii

	* pool_ssl.c: Change pool_error to pool_log when backend does not
	  support SSL but pgpool does.

2010-02-03 19:31  t-ishii

	* pool_ssl.c: All previously handled errors related to the OpenSSL
	  engine are now handled with a macro and a small static function in
	  order to both produce more informative errors as well as commonize
	  some duplicate code in pool_ssl.c

	  Patch contributed by Sean Finney

2010-02-03 17:11  t-ishii

	* pool.h, pool_process_query.c, pool_proto_modules.c: Emit
	  statement log when error or notice message comes from backend when
	  SimpleQuery or Parse executed.  This is usefull because PostgreSQL
	  does not log particular statement if the error was detected *before*
	  raw parser get executed.  This typlically happens when encoding
	  error was found.

2010-02-02 14:45  t-ishii

	* TODO: Sync TODO with 2.3.2

2010-02-02 14:44  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html: Add description about how
	  to sync sequences in online recovery

2010-02-02 14:43  t-ishii

	* pool_process_query.c: Fix typo in comment

2010-02-01 18:05  t-ishii

	* child.c, pool.h, pool_process_query.c, pool_timestamp.c,
	  test/timestamp/expected/insert.out,
	  test/timestamp/input/insert.sql: Fix timestamp rewritting.  Fix
	  number of parameters of Prepare.  Fix prepared statement list to be
	  reset when connection_cache = false.  Patch contributed by Akio
	  Ishida.

2010-01-31 22:28  t-ishii

	* pool_ssl.c: Include string.h for strlen

2010-01-31 12:15  t-ishii

	* ChangeLog: Update ChangeLog

2010-01-31 11:55  t-ishii

	* pool_process_reporting.c: Add lobj_lock_table, ssl, ssl_key and
	  ssl_cert.

2010-01-31 11:54  t-ishii

	* pool_lobj.c: Fix error message

2010-01-31 11:22  t-ishii

	* NEWS, configure, configure.in, pgpool.conf.sample,
	  pgpool.conf.sample-master-slave, pgpool.conf.sample-replication,
	  pool.h, pool_config.c, pool_config.l, pool_ssl.c,
	  doc/pgpool-en.html, doc/pgpool-ja.html: Prepare 2.3.2.

2010-01-30 10:57  t-ishii

	* pool_process_query.c, pool_proto_modules.c: Fix parse() so that
	  it does not use already-freeed memory when sending rewritten packet
	  for timestamp support.  Also fix SimpleForwardToBackend() to free
	  rewritten packet in proper timing.

2010-01-26 23:49  t-ishii

	* Makefile.am, Makefile.in, child.c, config.h.in, configure,
	  configure.in, main.c, pgpool.conf.sample,
	  pgpool.conf.sample-master-slave, pgpool.conf.sample-replication,
	  pool.h, pool_config.c, pool_config.l, pool_ssl.c, pool_stream.c:
	  Add SSL support. Patch contributed by Sean Finney.
	  -------------------------------------------------------------------
	  The new pool_ssl.c provides the necessary functions for negotiating
	  SSL based connections for both frontend and backend connections.
	  child.c has been updated to request the negotiation in both cases,
	  and pool_stream.c has been modified to use SSL based i/o functions
	  if a connection has successfully negotiated a connection.

	  SSL related failures should be handled as gracefully as possible.
	  For frontend connections, the client is allowed to continue in
	  cleartext in the case that SSL negotiation was not successful.  For
	  backend connections, plaintext connections should continue as well,
	  modulo any pg_hba restrictions on the remote server.  It is also
	  possible to have connections where only one of the frontend/backend
	  uses SSL.

	  By default this functionality is off (further testing should be done
	  and perhaps better controls on certificate verification, etc).

	  New fields are added to the global pool configuration to allow
	  specifying SSL related settings:

	   * "ssl", global on/off switch (default: off)
	   * "ssl_cert", path to SSL public certificate (default: "")
	   * "ssl_key", path to SSL private key (default: "")

	  The sample pgpool.conf files have been updated with comments and
	  sample values for these new settings.

	  The autoconf build system has been updated with a new
	  "--with-openssl" option to allow enabling/disabling SSL support at
	  build time.  For simplicity and clarity no effort is made to provide
	  extra flexibility similar to the existing
	  --with-pgsql{,-include-dir,lib-dir} ./configure flags.  In the
	  meantime it's expected that the necessary flags are provided via
	  CFLAGS/LDFLAGS etc when calling ./configure.

2010-01-26 18:53  t-ishii

	* pool.h, pool_lobj.c, pool_process_query.c, pool_relcache.c,
	  pool_timestamp.c, test/timestamp/main.c: Teach do_query to
	  support V2 protocol. This will solve the problem with pgpool-II 2.3
	  user who are experiencing error while using V2 dirvers (for example
	  unixODBC). See [Pgpool-general] Bug report pgpool-II-2.3.1 plus ODBC
	  submitted on Tue, 12 Jan 2010 12:46:35 -0500 for this kind of use
	  case.  Patch contributed by Toshihiro Kitagawa.

2010-01-24 00:21  t-ishii

	* Makefile.am, Makefile.in, pgpool.conf.sample, pool.h,
	  pool_config.c, pool_config.l, pool_lobj.c, pool_process_query.c:
	  Add support for large object creation in replication mode.  We
	  rewrite lo_creat function call to lo_create which allow us to
	  specifiy large object id. The missing argument for lo_create is
	  taken by: SELECT coalesce(max(loid)::INTEGER, 0)+1 FROM
	  pg_catalog.pg_largeobject; To avoid race condion, we add new
	  directive called lobj_lock_table which is used to aquire lock while
	  grabing above value.  New source file pool_lobj.c added.

2010-01-21 16:41  t-ishii

	* pool_process_query.c, pool_proto_modules.c: Fix
	  SimpleForwardtoBackend so that it sends Bind, Describe and Close
	  message to only master node if running in master/slave and in
	  transaction.

2010-01-21 14:49  t-ishii

	* pool_process_query.c, pool_proto_modules.c: Fix
	  SimpleForwardtoBackend so that it sends Bind, Describe and Close
	  message to only master node if running in master/slave and in
	  transaction.

2010-01-19 16:23  kitagawa

	* child.c: Fix do_child() so that check_stop_request() exits
	  immediately when smart shutdown signal has been sent.  This has been
	  used to work in 2.2.

2010-01-17 17:42  t-ishii

	* pool_rewrite_outfuncs.c: Add standard pgpool Global Development
	  Group header comments.  This was missing from the day one of the
	  file.

	  Fix _rewriteGrantStmt to suppress compiler warnings.  (This is not
	  an actual fix, just make it cleaner that we are missing some
	  implementations).

2010-01-17 17:19  t-ishii

	* pool_timestamp.c: Fix bind_rewrite_timestamp when used with
	  paramFormats being specified and more than two parameters exist.
	  Patch contributed by Akio Ishida.  See [pgpool-general-jp: 670] for
	  more details.

2010-01-09 18:24  t-ishii

	* pool_process_query.c: Emit a log when postmaster goes down.

2010-01-09 18:15  t-ishii

	* pool_proto_modules.c: Fix ProcessFrontendResponse not to accept
	  invalid frotend packet.  Patch contributed by Xavier Noguer.

2010-01-09 18:10  t-ishii

	* child.c, pool.h, pool_process_query.c: Remove unused argument
	  first_ready_for_query_received from pool_process_query.  Also change
	  argument "connection_reuse" to reset_request which is more
	  appropreate one.  While processing reset_request is true, we don't
	  read from frontend any data because after received terminate
	  request, anything from from frontend must be bogus and should be
	  ignored.  Remove unsed variable first_ready_for_query_received from
	  do_child.

2010-01-09 18:04  t-ishii

	* child.c, pool.h, pool_process_query.c: Remove unused argument
	  first_ready_for_query_received from pool_process_query.  Also chage
	  argument "connection_reuse" to reset_request which is more
	  appropreate one.  While processing reset_request is true, we don't
	  read from frontend any data because after received terminate
	  request, anything from from frontend must be bogus and should be
	  ignored.  Remove unsed variable first_ready_for_query_received from
	  do_child.

2010-01-09 09:51  t-ishii

	* pcp/pcp.c: Use %dz for sizeof in fprintf for more portability.

2010-01-02 18:32  t-ishii

	* child.c:
	   I found what I think is a small error allocating memory in the
	  make_persistent_db_connection() function in child.c. The amount of
	  memory allocated is more than it should be, so it's actually
	  harmless.

	  Patch contributed by Xavier Noguer.

2010-01-02 18:29  t-ishii

	* child.c:
	   I found what I think is a small error allocating memory in the
	  make_persistent_db_connection() function in child.c. The amount of
	  memory allocated is more than it should be, so it's actually
	  harmless.

	  Patch contributed by Xavier Noguer.

2010-01-02 18:17  t-ishii

	* pool_connection_pool.c, pool_process_query.c,
	  pool_proto_modules.c, pool_relcache.c: Fix warnings when
	  compiling on 64bit platforms.

2009-12-25 10:59  t-ishii

	* pool_proto_modules.c: Do not force replication of DEALLOCATE if
	  operated in master/slave mode. Now that pgpool do not execute PARSE
	  in all nodes, this was pointless and caused problem (kind mismatch
	  when executing DEALLOCATE).

2009-12-25 10:58  t-ishii

	* pool_process_query.c: Fix sloppy coding in parse_copy_data. Add
	  error checking for malloc. Remove meaningless strerror.

	  Fix sloppy coding in send_dealllocate. If failed to malloc, return
	  -1, rather than horrible exit(1).

2009-12-25 10:54  t-ishii

	* pool_process_query.c: Fix sloppy coding in parse_copy_data. Add
	  error checking for malloc. Remove meaningless strerror.

	  Fix sloppy coding in send_dealllocate. If failed to malloc, return
	  -1, rather than horrible exit(1).

2009-12-25 09:35  t-ishii

	* pool_proto_modules.c: Do not force replication of DEALLOCATE if
	  operated in master/slave mode. Now that pgpool do not execute PARSE
	  in all nodes, this was pointless and caused problem (kind mismatch
	  when executing DEALLOCATE).

2009-12-23 18:30  t-ishii

	* main.c, recovery.c: While health checking and recovery use
	  postgres database if possible.  If postgres database does not exist,
	  use template1 as it stands now.  While connecting template1, certain
	  commands, for example DROP DATABSE cannot used. Using postgres
	  database allows to use these commands while recovery.

2009-12-18 17:18  t-ishii

	* doc/pgpool-ja.css (tags: V2_3_1): Add css file for Japanese.

2009-12-18 17:16  t-ishii

	* NEWS, doc/pgpool-ja.html, ChangeLog (utags: V2_3_1): Prepare for
	  2.3.

2009-12-18 16:09  t-ishii

	* Makefile.am, Makefile.in, c-compiler.m4, c-library.m4,
	  config.h.in, configure, configure.in, general.m4,
	  parser/Makefile.in, pcp/Makefile.in (utags: V2_3_1): Fix bugtrack
	  [#1010740] BigInt distortion in pgpool-II 2.3 version, when NOW()
	  use. This bug only exists on 64bit platforms.

	  This was caused by that following code in parser/scan.l does not
	  work properly on 64bit platforms because HAVE_LONG_INT_64 is not
	  defined.  To fix this we steal part of PostgreSQL's configure and
	  some m4 macros.

	  					long val;
	  					char* endptr;

	  					SET_YYLLOC();
	  					errno = 0;
	  					val = strtol(yytext, &endptr, 10);
	  					if (*endptr != '\0' || errno == ERANGE #ifdef HAVE_LONG_INT_64
	  						/* if long > 32 bits, check for overflow of int4 */
	  						|| val != (long) ((int32) val) #endif
	  						)
	  					{
	  						/* integer too large, treat it as a float */
	  						yylval.str = pstrdup(yytext);
	  						return FCONST;
	  					}
	  					yylval.ival = val;
	  					return ICONST;

2009-12-18 09:30  t-ishii

	* pool_process_reporting.c (tags: V2_3_1), pool_process_query.c:
	  Fix crush with show pool_status when there many (more than 18) DB
	  nodes.

2009-12-16 18:35  t-ishii

	* main.c (tags: V2_3_1): Enhance pgpool start up log.

2009-12-16 18:23  t-ishii

	* pool.h, pool_process_query.c: Enhance "kind mismatch" message. If
	  kind is ERROR or NOTICE, print the ERROR/NOTICE message to help
	  users to find what's going on.  For this pupose, add new function
	  pool_extract_error_message() into pool_process_query.c.

	  Fix sloppy coding of detect_erorr(). Check memory allocation error,
	  check buffer overrun error.

2009-12-16 16:27  t-ishii

	* pool_process_query.c (tags: V2_3_1): Fix sloppy coding of
	  detect_erorr(). Check memory allocation error, check buffer overrun
	  error.

2009-12-16 16:19  t-ishii

	* pool.h (tags: V2_3_1), pool_process_query.c: Enhance "kind
	  mismatch" message. If kind is ERROR or NOTICE, print the
	  ERROR/NOTICE message to help users to find what's going on.  For
	  this pupose, add new function pool_extract_error_message() into
	  pool_process_query.c.

2009-12-07 20:47  t-ishii

	* Makefile.am, Makefile.in: Forgot to add sample pgpool.conf files.

2009-12-07 18:41  t-ishii

	* doc/pgpool-ja.html (tags: V2_3): Change release date

2009-12-07 18:38  t-ishii

	* NEWS (tags: V2_3), doc/pgpool-en.html (tags: V2_3_1, V2_3),
	  doc/pgpool-ja.html, ChangeLog (tags: V2_3): Prepare 2.3

2009-12-07 17:11  t-ishii

	* pool_process_query.c (tags: V2_3): Allow to load balance EXPLAIN
	  and EXPLAIN ANALYZE (only if query is SELECT). This will prevent
	  kind mismatch errors when query plan are different among servers.

2009-12-06 21:55  t-ishii

	* main.c, pool.h, pool_type.h (tags: V2_3_1) (utags: V2_3): Restore
	  backend status by using pgpool_status file.

2009-12-06 20:53  t-ishii

	* version.h (tags: V2_3_1, V2_3): Change code name for pgpool-II
	  2.3

2009-12-06 18:57  t-ishii

	* pgpool.conf.sample-master-slave, pgpool.conf.sample-replication
	  (utags: V2_3, V2_3_1): Add pgpool.conf sample for replication
	  mode and master/slave mode

2009-12-06 17:46  t-ishii

	* pgpool.conf.sample (tags: V2_3_1, V2_3), pool.h, pool_config.c
	  (tags: V2_3_1, V2_3), pool_config.l (tags: V2_3_1, V2_3),
	  pool_process_query.c, pool_process_reporting.c (tags: V2_3),
	  pool_stream.c (tags: V2_3_1, V2_3): Add new configuration
	  parameter fail_over_on_backend_error which controls the behavior
	  when write to backend socket fails.

	  Also add pool_log when postmaster administrative shutdown detected.

2009-12-06 16:52  t-ishii

	* pool_process_query.c, pool_proto_modules.c (tags: V2_3_1, V2_3):
	  Ignore error of pool_flush(frontend).

2009-12-06 16:46  t-ishii

	* pool_proto_modules.c: Optimization when num_init_children == 1.
	  In this case we don't need to wait for master returning a response
	  before sending a query to the other nodes.

2009-12-06 16:43  t-ishii

	* Makefile.am (tags: V2_3), Makefile.in (tags: V2_3),
	  pool_process_query.c, pool_process_reporting.c: Teach
	  process_reporting() about log_per_node_statement.  Also refactor
	  pool_process_query.c to remove process_reporting() and make a new
	  source file "pool_process_reporting.c" to hold the funtcion. Main
	  reason for this is, process_reporting() is now big enough to have a
	  separate C source file.

2009-12-02 23:19  t-ishii

	* child.c (tags: V2_3_1, V2_3), pool.h, pool_process_query.c:
	  Enhance SIGINT handler.

2009-12-02 23:11  t-ishii

	* pool_proto_modules.c: Fix ProcessFrontendResponse() handling of
	  Parse message in master/slave mode. If it's inside transaction,
	  enable master_slave_dml, which means execute parse on master only.
	  This will prevent unwanted parase executed on slave, which holds at
	  least AccessShareLock on tables until transaction commits.  It seems
	  unamed statement does not release the lock until execute.

	  Please note that, even with this fix, bind state will remain on
	  slave if JDBC issues parse with autocommit off. This is because
	  BEGIN parsed, bind on both master and slave but execute only on
	  master. However, this is not harmfull since parse/bind does not hold
	  any locks on tables.

	  Also add some logging statemets.

2009-12-01 22:05  t-ishii

	* ChangeLog (tags: V2_2_6): v2.2.6

2009-12-01 22:02  t-ishii

	* doc/pgpool-ja.html, NEWS (utags: V2_2_6): Add release note

2009-11-29 20:56  t-ishii

	* pool_process_query.c, pool_process_query.c (tags: V2_2_6): Fix
	  is_select_query() not to allow cursor statements.  Close() should
	  not allowed since hold cursor + update may cause data inconsistency.

2009-11-29 17:42  t-ishii

	* pool_process_query.c: Add logging by per_node_statement().

2009-11-29 17:29  t-ishii

	* pool_proto_modules.c (tags: V2_2_6): Fix
	  ProcessFrontendResponse() handling of Parse message in master/slave
	  mode. If it's inside transaction, enable master_slave_dml, which
	  means execute parse on master only.  This will prevent unwanted
	  parase executed on slave, which holds at least AccessShareLock on
	  tables until transaction commits.  It seems unamed statement does
	  not release the lock until execute.

	  Please note that, even with this fix, bind state will remain on
	  slave if JDBC issues parse with autocommit off. This is because
	  BEGIN parsed, bind on both master and slave but execute only on
	  master. However, this is not harmfull since parse/bind does not hold
	  any locks on tables.

2009-11-18 15:55  t-ishii

	* config.h.in, configure, configure.in (utags: V2_2_6): Add -lcrypt
	  for linking commnad. Certain distribution ships libpq without
	  linking to libcrypt by some reasons which I don't know.

2009-11-18 15:45  t-ishii

	* config.h.in, configure, configure.in (utags: V2_3): Add -lcrypt
	  for linking commnad. Certain distribution ships libpq without
	  linking to libcrypt by some reasons which I don't know.

2009-11-15 20:16  t-ishii

	* ChangeLog: Run cvs2cl.pl -t --fsf -b -F trunk

2009-11-15 17:27  t-ishii

	* pgpool.conf.sample, pool.h, pool_config.c, pool_config.l,
	  pool_process_query.c, pool_proto_modules.c, pool_relcache.c
	  (tags: V2_3_1, V2_3): Add new directive log_per_node_statement.
	  If true, print all statements to the log. Similar to log_statement
	  except that prints DB node id and backend process id info.

2009-11-15 17:05  t-ishii

	* pool_config.c, pool_config.l: Set change default value of
	  reset_query_list to "ABORT, DISCARD ALL"

2009-11-14 22:22  t-ishii

	* child.c, pool.h, pool_process_query.c, pool_proto_modules.c,
	  pool_proto_modules.h (tags: V2_3_1, V2_3): Fix connection_cache =
	  false case. In this mode, if frontend exits abnormaly, some global
	  state variables are not reset. For this purpose, new function
	  reset_variables() added.

	  Remove unnecessary argument of end_load_balance().

2009-11-14 22:16  t-ishii

	* pool.h (tags: V2_2_6), pool_process_query.c,
	  pool_proto_modules.c, pool_proto_modules.h (tags: V2_2_6),
	  child.c (tags: V2_2_6): Fix connection_cache = false case. In
	  this mode, if frontend exits abnormaly, some global state variables
	  are not reset. For this purpose, new function reset_variables()
	  added.

	  Remove unnecessary argument of end_load_balance().

2009-11-14 20:41  t-ishii

	* pool_config.c: Update pool_config.l

2009-11-14 20:40  t-ishii

	* pool_config.l: Allow to change weight with reloading pgpool.conf

2009-11-14 20:38  t-ishii

	* pool_config.c (tags: V2_2_6): Update pgpool_config.l

2009-11-14 20:37  t-ishii

	* pool_config.l (tags: V2_2_6): Allow to change weight with
	  reloading pgpool.conf

2009-11-14 20:35  t-ishii

	* main.c (tags: V2_2_6), main.c: Limit listen(2)'s backlog
	  parameter to num_init_children*2 at largest.  This is almost same
	  algorithm as PostgreSQL.  I hope pgpool-II does not consume so much
	  system resource any more...

2009-11-14 08:35  t-ishii

	* pool_timestamp.c, test/timestamp/expected/insert.out,
	  test/timestamp/expected/misc.out,
	  test/timestamp/expected/update.out (utags: V2_3, V2_3_1): Fix
	  some query rewriting cases.

2009-11-12 16:37  t-ishii

	* pgpool.conf.sample: Change reset_query_list default to PostgreSQL
	  8.3.

2009-11-12 16:04  t-ishii

	* pool_process_query.c: Prepare for bind_rewrite_timestamp()
	  returns NULL case. This could happen if SELECT now() is called
	  inside an aborted transaction.

	  Fix SimpleForwardToBackend free rewrite_msg too early.

2009-11-11 10:53  t-ishii

	* pool_timestamp.c: Fix comment.

2009-11-10 19:03  t-ishii

	* Makefile.am, Makefile.in, pool_process_query.c,
	  pool_proto_modules.c, pool_proto_modules.h, pool_timestamp.c,
	  pool_timestamp.h (tags: V2_3_1, V2_3), test/timestamp/Makefile
	  (tags: V2_3_1, V2_3), test/timestamp/main.c (tags: V2_3_1, V2_3),
	  test/timestamp/parse_schedule (tags: V2_3_1, V2_3),
	  test/timestamp/run-test (tags: V2_3_1, V2_3),
	  test/timestamp/expected/insert.out,
	  test/timestamp/expected/misc.out,
	  test/timestamp/expected/update.out,
	  test/timestamp/input/insert.sql (tags: V2_3_1, V2_3),
	  test/timestamp/input/misc.sql (tags: V2_3_1, V2_3),
	  test/timestamp/input/update.sql (tags: V2_3_1, V2_3): Add support
	  for CURRENT_TIMESTAMP and friends.  Patch provided by Akio Ishida.

2009-11-10 11:24  t-ishii

	* main.c: Fix comment.

2009-11-05 15:26  t-ishii

	* pool_relcache.c (tags: V2_2_6), pool_relcache.c: Fix relcache
	  replacement logic bug.  Patches provided by Akio Ishida.

2009-11-05 13:12  t-ishii

	* parser/outfuncs.c, test/parser/expected/insert.out,
	  test/parser/expected/select.out, test/parser/input/insert.sql,
	  test/parser/input/select.sql (utags: V2_2_6): Fix nodeToString()
	  bug. example test case: If nodeToString() is given the parse tree of
	  "insert into r1 values(1,2), (3,4)", it returns "insert into r1
	  values(1,2), values(3,4)", which is apparently wrong.  Patch
	  provided by Akio Ishida.

2009-11-05 12:43  t-ishii

	* ChangeLog, TODO (tags: V2_3_1, V2_3), parser/outfuncs.c (tags:
	  V2_3_1, V2_3), test/parser/expected/insert.out (tags: V2_3_1,
	  V2_3), test/parser/expected/select.out (tags: V2_3_1, V2_3),
	  test/parser/input/insert.sql (tags: V2_3_1, V2_3),
	  test/parser/input/select.sql (tags: V2_3_1, V2_3): Fix
	  nodeToString() bug. example test case: If nodeToString() is given
	  the parse tree of "insert into r1 values(1,2), (3,4)", it returns
	  "insert into r1 values(1,2), values(3,4)", which is apparently
	  wrong.  Patch provided by Akio Ishida.

2009-11-04 22:59  t-ishii

	* pool_process_query.c: Fix do_query() to return more than 1
	  characters. Patch provided by Akio Ishida.

2009-11-03 20:14  devrim

	* pgpool.spec (tags: V2_3_1, V2_3), pgpool.spec (tags: V2_2_6):
	  - Remove init script from all runlevels before uninstall. Per #RH
	    Bugzilla 532177

2009-11-03 11:00  t-ishii

	* pool.h, pool_auth.c (tags: V2_3_1, V2_3), pool_process_query.c:
	  When authentication fails, report to frontend proper error messages,
	  rather than unhelpfull "server closed the connection unexpectedly"
	  message. Patch provided by Glyn Astill with minor tweak by Tatsuo
	  Ishii.

2009-11-03 10:57  t-ishii

	* pool.h, pool_auth.c (tags: V2_2_6), pool_process_query.c: When
	  authentication fails, report to frontend proper error messages,
	  rather than unhelpfull "server closed the connection unexpectedly"
	  message. Patch provided by Glyn Astill with minor tweak by Tatsuo
	  Ishii.

2009-11-03 10:50  t-ishii

	* pool_stream.c (tags: V2_2_6), pool_stream.c: Fix pool_flush_it()
	  so that it does not complain when failed to flush to frontend. Also
	  add info to the message if it was backend or frontend to avoid
	  confusion.

2009-10-30 14:11  t-ishii

	* pool_proto_modules.c: Allow is_temp_table to work with pre 8.4
	  PostgreSQL.

2009-10-30 14:01  t-ishii

	* pool_proto_modules.c: Allow is_temp_table to work with pre 8.4
	  PostgreSQL.

2009-10-29 22:44  t-ishii

	* Makefile.am, Makefile.in, child.c, configure, configure.in,
	  pool.h, pool_process_query.c, pool_proto_modules.c: Add
	  pool_relcache.c to Makefile.am.  Refactor need_insert_lock to use
	  pool_search_relcache and friends.  Add LocalSessionId to child.c
	  which manage per session counter of relcache.  Allow to use temp
	  tables with master/slave mode. Parse() failed.  since Parse() was
	  always sent to master and slave and slave does not have the temp
	  table. To fix this, is_temp_table() added to pool_proto_modules.c
	  which inquire particular table is a temporary one or not when
	  INSERT/UPDATE/DELETE. If it's a temporary table, parse message is
	  sent to only master. Note that /*NO LOAD BALANCE*/ directive can be
	  used to control this.  SELECT still needs /*NO LOAD BALANCE*/. It's
	  hard to find all tables in a SELECT statement.

2009-10-29 21:58  t-ishii

	* child.c, pool.h, pool_process_query.c, Makefile.am (tags:
	  V2_2_6), Makefile.in (tags: V2_2_6), configure, configure.in,
	  pool_proto_modules.c: Add pool_relcache.c to Makefile.am.
	  Refactor need_insert_lock to use pool_search_relcache and friends.
	  Add LocalSessionId to child.c which manage per session counter of
	  relcache.  Allow to use temp tables with master/slave mode. Parse()
	  failed.  since Parse() was always sent to master and slave and slave
	  does not have the temp table. To fix this, is_temp_table() added to
	  pool_proto_modules.c which inquire particular table is a temporary
	  one or not when INSERT/UPDATE/DELETE. If it's a temporary table,
	  parse message is sent to only master. Note that /*NO LOAD BALANCE*/
	  directive can be used to control this.  SELECT still needs /*NO LOAD
	  BALANCE*/. It's hard to find all tables in a SELECT statement.

2009-10-29 21:46  t-ishii

	* pool_relcache.c: Per process relation cache module

2009-10-29 21:42  t-ishii

	* pool_relcache.c: Per process relation cache module

2009-10-25 16:19  t-ishii

	* test/jdbc/: CreateTempTableTest.java (tags: V2_3_1, V2_3),
	  expected/CreateTempTable (tags: V2_3_1, V2_3), RunTest.java
	  (tags: V2_2_6), RunTest.java (tags: V2_3_1, V2_3): Add temp table
	  test

2009-10-25 16:14  t-ishii

	* test/jdbc/: CreateTempTableTest.java, expected/CreateTempTable
	  (utags: V2_2_6): Add temp table test

2009-10-22 20:52  devrim

	* redhat/: pgpool.init (tags: V2_2_6), pgpool.sysconfig (tags:
	  V2_2_6), pgpool.init (tags: V2_3_1, V2_3), pgpool.sysconfig
	  (tags: V2_3_1, V2_3): Fix logging, per report from Toshihiro
	  Kitagawa.

2009-10-21 23:39  t-ishii

	* pool_process_query.c: Do not execute CREATE/DROP TABLE SPACE
	  inside a transaction block.

	  Teach do_command() that S (parameter status) should be ignored until
	  receiving command complete.

2009-10-21 23:05  t-ishii

	* main.c: Let reaper() report the case when child died by segfault.

2009-10-12 11:21  t-ishii

	* pgpool.8.in (tags: V2_3_1, V2_3): Fix typo in man page. Patch
	  provided by Rodolphe.

2009-10-12 11:19  t-ishii

	* pgpool.8.in (tags: V2_2_6): Fix typo in man pages. Patch provided
	  by Rodolphe.

2009-10-12 10:54  t-ishii

	* pool_process_query.c: REINDEX DATABASE or SYSTEM should not be
	  executed in a transaction block. See [pgpool-general-jp: 623] for
	  more details.

2009-10-12 10:41  t-ishii

	* pool_process_query.c: REINDEX DATABASE or SYSTEM should not be
	  executed in a transaction block. See [pgpool-general-jp: 623] for
	  more details.

2009-10-06 00:13  devrim

	* pgpool.spec:
	   - Update to 2.2.5, for various fixes described at

	  http://lists.pgfoundry.org/pipermail/pgpool-general/2009-October/002188.html
	   - Re-apply a fix for Red Hat Bugzilla #442372
	   - Add 2 new docs, per Tatsuo.

2009-10-06 00:12  devrim

	* pgpool.spec:
	   Add 2 new docs, per Tatsuo.

2009-10-05 19:38  devrim

	* pgpool.spec:
	  - Update to 2.2.5, for various fixes described at

	  http://lists.pgfoundry.org/pipermail/pgpool-general/2009-October/002188.html
	  - Re-apply a fix for Red Hat Bugzilla #442372
	  - Sync with Fedora spec.

2009-10-04 18:15  t-ishii

	* NEWS, configure.in, configure, ChangeLog (utags: V2_2_5): Prepare
	  2.2.5

2009-10-04 18:15  t-ishii

	* doc/pgpool-ja.html (tags: V2_2_5): Add release note for 2.2.5

2009-10-04 08:52  t-ishii

	* doc/: tutorial-en.html (tags: V2_2_6, V2_2_5), tutorial-en.html
	  (tags: V2_3_1, V2_3), tutorial-ja.html (tags: V2_3_1, V2_3): Add
	  sample to use rotatelogs

2009-10-03 21:45  t-ishii

	* doc/tutorial-ja.html (tags: V2_2_6, V2_2_5): Add sample to use
	  rotatelogs

2009-10-03 21:39  t-ishii

	* sample/: pgpool_recovery_pitr (tags: V2_2_6, V2_2_5),
	  pgpool_recovery_pitr (tags: V2_3_1, V2_3): Enhance online
	  recovery 2nd stage script to sync sequence value

2009-10-03 20:55  t-ishii

	* pool_proto_modules.h (tags: V2_2_5), pool_proto_modules.h: Remove
	  unnecessary declaration "allow_close_transaction"

2009-10-02 17:00  t-ishii

	* pool_proto_modules.c: Prevoius commit was incomplete

2009-10-02 16:56  t-ishii

	* pool_proto_modules.c (tags: V2_2_5), pool_proto_modules.c: Fix
	  Parse() to use wait_for_query_response() instead of synchronize().

2009-10-02 16:53  t-ishii

	* pool_process_query.c (tags: V2_2_5), pool_process_query.c: Fix
	  comment

2009-09-26 18:14  t-ishii

	* pool_proto_modules.c: Allow to print more accurate query when
	  Parse() detects kind mismatch errors.

2009-09-26 16:51  t-ishii

	* pool_process_query.c: Fix reset_backend to deal with DEALLOCATE
	  error. In this case prepared objects are not removed and
	  reset_backend is infinitely called.

	  Fix do_command to guard against the case that after execution of an
	  SQL command, the backend does not return either N, E or C. This
	  should not happen but there was a report that it actually happend in
	  certain cases(maybe caused by asynchronized backend data?)

	  See:

	  Subject: Re: [Pgpool-general] pgpool 2.2.4: DEALLOCATED children
	  From: Xavier Noguer Date: Fri, 25 Sep 2009 03:35:57 -0400

	  For more details.

	  Patches by Xavier Noguer with minor tweak by Tatsuo Ishii.

2009-09-26 16:36  t-ishii

	* pool_process_query.c: Fix reset_backend to deal with DEALLOCATE
	  error. In this case prepared objects are not removed and
	  reset_backend is infinitely called.

	  Fix do_command to guard against the case that after execution of an
	  SQL command, the backend does not return either N, E or C. This
	  should not happen but there was a report that it actually happend in
	  certain cases(maybe caused by asynchronized backend data?)

	  See:

	  Subject: Re: [Pgpool-general] pgpool 2.2.4: DEALLOCATED children
	  From: Xavier Noguer Date: Fri, 25 Sep 2009 03:35:57 -0400

	  For more details.

	  Patches by Xavier Noguer with minor tweak by Tatsuo Ishii.

2009-09-26 09:27  t-ishii

	* pool_process_query.c: Remove error checks for
	  pool_write(frontend), pool_flush(frontend) in
	  SimpleForwardToFrontend.

	  Check error for send_deallocate() in reset_backend. Otherwise
	  send_deallocate will be called infinitely.  Per bug report from
	  Agustin Almonte Ferrada. See:

	  Subject: Re: [Pgpool-general] pgpool 2.2.4: DEALLOCATED children
	  From: Agustin Almonte Ferrada <aalmonte@antica.cl> To: Tatsuo Ishii
	  <ishii@sraoss.co.jp> Cc: pgpool-general@pgfoundry.org Date: Wed, 23
	  Sep 2009 01:55:54 -0400

2009-09-26 09:05  t-ishii

	* pool_process_query.c: FIX parallel query

	  	     1. Fix JOIN Expr
	  	          Subquery was used on larg or rarg.
	  	          Subquery was used on ON-Cluase.
	  	          Full OUTER JOIN was not optimized.　　
	  	     2. Fail_on_error=false was passed to the 3rd arguments of
	  	     dblink.

	  This patch was applied to only 2.2-STABLE tree by y-mori on
	  2009/09/08.

2009-09-25 23:36  t-ishii

	* pool_proto_modules.c: Make allow_close_transaction to static and
	  add comments.

	  Let execute CREATAE TEMP TABLE on every nodes in master/slave mode.
	  If not, subsequent Parse or Bind to use the table will fail.  At
	  this point this doen't work since MASTER_SLAVE set to 0 in
	  ProcessFrontendResponse. More analysis is needed...

2009-09-25 16:35  t-ishii

	* main.c (tags: V2_2_5), main.c: Fix write_pid_file. It forgot to
	  write out NULL termination of pid. Pgpool occasionally won't stop
	  because of this bug.

2009-09-23 20:39  t-ishii

	* pool_process_query.c: Remove error checks for
	  pool_write(frontend), pool_flush(frontend) in
	  SimpleForwardToFrontend.

	  Check error for send_deallocate() in reset_backend. Otherwise
	  send_deallocate will be called infinitely.  Per bug report from
	  Agustin Almonte Ferrada. See:

	  Subject: Re: [Pgpool-general] pgpool 2.2.4: DEALLOCATED children
	  From: Agustin Almonte Ferrada <aalmonte@antica.cl> To: Tatsuo Ishii
	  <ishii@sraoss.co.jp> Cc: pgpool-general@pgfoundry.org Date: Wed, 23
	  Sep 2009 01:55:54 -0400

2009-09-23 11:03  t-ishii

	* pool_auth.c (tags: V2_2_5), pool_auth.c: Fix pool_read_kind and
	  pool_read_int so that the error message for kind is shown in
	  hexadecimal. Other part of pgpool-II already does this.

2009-09-17 20:32  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h:
	  Teach do_command() to use wait_for_query_response().  insert_lock()
	  calls do_command() to issue LOCK TABLE to lock tables having SERIAL
	  column when insert_lock is true. Problem is, insert_lock() waits
	  forever in do_command() if the target table is locked by someone
	  else. This patch should give a way insert_lock() to espcape from the
	  situation.

2009-09-17 20:17  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h:
	  Teach do_command() to use wait_for_query_response().  insert_lock()
	  calls do_command() to issue LOCK TABLE to lock tables having SERIAL
	  column when insert_lock is true. Problem is, insert_lock() waits
	  forever in do_command() if the target table is locked by someone
	  else. This patch should give a way insert_lock() to espcape from the
	  situation.

2009-09-06 12:56  t-ishii

	* child.c, pool.h: Fix connection_count_down() so that it does
	  decrement too much in some corner cases.  If failed to read a start
	  up packet, or receive cancel request etc., connection_count_down()
	  is called and goes back to the onnection accept loop. Problem is, at
	  the very beginning of the connection accept loop, if we have
	  received a signal, we call child_exit() which calls
	  connection_count_down() again.  Problem report by Ryoichi TANABE.
	  See [pgpool-general-jp: 616] for more details.

	  Also unneccesary public declarations for connection_count_up() and
	  connection_count_down() are removed.

2009-09-06 12:54  t-ishii

	* pool_process_query.c: Undef #define SEND_NOTICE_ON_PROTO2, which
	  was defined by mistake.

2009-09-06 12:52  t-ishii

	* child.c, pool.h (utags: V2_2_5): Fix connection_count_down() so
	  that it does decrement too much in some corner cases.  If failed to
	  read a start up packet, or receive cancel request etc.,
	  connection_count_down() is called and goes back to the onnection
	  accept loop. Problem is, at the very beginning of the connection
	  accept loop, if we have received a signal, we call child_exit()
	  which calls connection_count_down() again.  Problem report by
	  Ryoichi TANABE. See [pgpool-general-jp: 616] for more details.

	  Also unneccesary public declarations for connection_count_up() and
	  connection_count_down() are removed.

2009-08-24 13:58  t-ishii

	* ChangeLog (tags: V2_2_4): Prepare 2.2.4

2009-08-24 13:55  t-ishii

	* NEWS, configure, doc/pgpool-ja.html (utags: V2_2_4): Prepare
	  2.2.4

2009-08-24 13:53  t-ishii

	* configure.in (tags: V2_2_4): Prepare 2.2.4.

2009-08-24 13:36  t-ishii

	* TODO (tags: V2_2_6, V2_2_5, V2_2_4): Add a few items

2009-08-22 13:19  t-ishii

	* child.c, main.c, md5.c (tags: V2_2_6, V2_2_5), pcp_child.c (tags:
	  V2_2_6, V2_2_5), pg_md5.c (tags: V2_2_6, V2_2_5), pool_auth.c,
	  pool_config.c (tags: V2_2_5), pool_connection_pool.c (tags:
	  V2_2_6, V2_2_5), pool_error.c (tags: V2_2_6, V2_2_5), pool_hba.c
	  (tags: V2_2_6, V2_2_5), pool_ip.c (tags: V2_2_6, V2_2_5),
	  pool_params.c (tags: V2_2_6, V2_2_5), pool_path.c (tags: V2_2_6,
	  V2_2_5), pool_process_query.c, pool_proto_modules.c,
	  pool_query_cache.c (tags: V2_2_6, V2_2_5),
	  pool_rewrite_outfuncs.c (tags: V2_2_6, V2_2_5),
	  pool_rewrite_query.c (tags: V2_2_6, V2_2_5), pool_sema.c (tags:
	  V2_2_6, V2_2_5), pool_shmem.c (tags: V2_2_6, V2_2_5),
	  pool_signal.c (tags: V2_2_6, V2_2_5), pool_stream.c (tags:
	  V2_2_5), pool_system.c (tags: V2_2_6, V2_2_5), ps_status.c (tags:
	  V2_2_6, V2_2_5), recovery.c (tags: V2_2_6, V2_2_5), strlcpy.c
	  (tags: V2_2_6, V2_2_5), pcp/md5.c (tags: V2_2_6, V2_2_5) (utags:
	  V2_2_4): Remove unnecessary spaces and tabs at end of line.
	  Patch conributed by Jun Kuriyama.

2009-08-22 13:04  t-ishii

	* child.c, main.c, md5.c (tags: V2_3_1, V2_3), pcp_child.c (tags:
	  V2_3_1, V2_3), pg_md5.c (tags: V2_3_1, V2_3), pool_auth.c,
	  pool_config.c, pool_connection_pool.c (tags: V2_3_1, V2_3),
	  pool_error.c (tags: V2_3_1, V2_3), pool_hba.c (tags: V2_3_1,
	  V2_3), pool_ip.c (tags: V2_3_1, V2_3), pool_params.c (tags:
	  V2_3_1, V2_3), pool_path.c (tags: V2_3_1, V2_3),
	  pool_process_query.c, pool_proto_modules.c, pool_query_cache.c
	  (tags: V2_3_1, V2_3), pool_rewrite_outfuncs.c (tags: V2_3_1,
	  V2_3), pool_rewrite_query.c (tags: V2_3_1, V2_3), pool_sema.c
	  (tags: V2_3_1, V2_3), pool_shmem.c (tags: V2_3_1, V2_3),
	  pool_signal.c (tags: V2_3_1, V2_3), pool_stream.c, pool_system.c
	  (tags: V2_3_1, V2_3), ps_status.c (tags: V2_3_1, V2_3),
	  recovery.c (tags: V2_3_1, V2_3), strlcpy.c (tags: V2_3_1, V2_3),
	  pcp/md5.c (tags: V2_3_1, V2_3): Remove unnecessary spaces and
	  tabs at end of line.  Patch conributed by Jun Kuriyama.

2009-08-20 15:26  t-ishii

	* pool_process_query.c: Fix possible bug introduced in pgpool-II
	  2.2.2.  Load balance control variables may remain not be restored
	  and subsequent DML/DDL call might sent to only master node.

2009-08-18 17:41  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h:
	  Change wait_for_query_response() so that it sends NOTICE message to
	  frontend periodically. It appears that pgpool-II 2.2.3
	  unconditionaly sends param packet to client even it uses version 2
	  protocol, which is apparentlt wrong. Also tweak checking period from
	  1 second to 30 seconds since 1 second seems too aggressive.  Note
	  that you need to edit pool_process_query.c to define
	  SEND_NOTICE_ON_PROTO2 around line 879 to enable this feature in
	  version 2 protocol.

2009-08-18 17:38  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h
	  (tags: V2_2_4): Change wait_for_query_response() so that it sends
	  NOTICE message to frontend periodically. It appears that pgpool-II
	  2.2.3 unconditionaly sends param packet to client even it uses
	  version 2 protocol, which is apparentlt wrong. Also tweak checking
	  period from 1 second to 30 seconds since 1 second seems too
	  aggressive.

2009-08-18 17:30  t-ishii

	* child.c: Remove unneccessary call to send_frontend_exit() in
	  do_child().

2009-08-13 22:40  t-ishii

	* child.c: Remove unnessary call of send_frontend_exits() in die().

2009-08-13 22:39  t-ishii

	* main.c: Block signals before forking children rather after.
	  Otherwise parent will be killed by failover signal if it receives
	  before establish signal handler. See [pgpool-general-jp: 586] for
	  more details.

2009-08-13 22:36  t-ishii

	* child.c: Remove unnessary call of send_frontend_exits() in die().

2009-08-13 22:34  t-ishii

	* main.c: Block signals before forking children rather after.
	  Otherwise parent will be killed by failover signal if it receives
	  before establish signal handler. See [pgpool-general-jp: 586] for
	  more details.

2009-08-11 22:53  t-ishii

	* ChangeLog (tags: V2_2_3): Prepare 2.2.3.

2009-08-11 22:52  t-ishii

	* configure.in, configure (utags: V2_2_3): Stamp 2.2.3.

2009-08-11 22:48  t-ishii

	* doc/pgpool-ja.html (tags: V2_2_3): Fix description of parallel
	  query.  Add release note for 2.2.3.

2009-08-11 22:23  t-ishii

	* pool_connection_pool.c (tags: V2_2_3), pool_connection_pool.c:
	  Fix new_connection() so that it does leave garbage in
	  POOL_CONNECTION_POOL->slot[i]. This caused segfault in child_exit().
	  Bug report at [pgpool-general-jp: 586].

2009-08-07 14:27  y-mori

	* pool_process_query.c, pool_rewrite_outfuncs.c (utags: V2_2_3):
	  FIX parallel query

	     1. Fix JOIN Expr
	          Subquery was used on larg or rarg.
	          Subquery was used on ON-Cluase.
	          Full OUTER JOIN was not optimized.　　
	     2. Fail_on_error=false was passed to the 3rd arguments of dblink.

2009-08-06 20:38  t-ishii

	* Makefile.in: Update Makefile.am

2009-08-06 18:11  t-ishii

	* Makefile.am: Add parser/test files. Patch contributed by Akio
	  Ishida.

2009-08-06 16:55  t-ishii

	* pool_proto_modules.c (tags: V2_2_3), pool_proto_modules.c: Print
	  last query for kind mismatch error message even extended protocol is
	  used. Patch contributed by Akio Ishida.

2009-08-06 16:46  t-ishii

	* pool_process_query.c: Fix buffer overrun error which mangled kind
	  mismatch error message in pool_send_error_message().  Bug rpeort by
	  Takahiro Itagaki at [pgsql-jp: 39950].  Fix suggested by Akio Ishida
	  at [pgsql-jp: 39952].

2009-08-06 16:38  t-ishii

	* pool_process_query.c: Fix buffer overrun error which mangled kind
	  mismatch error message in pool_send_error_message().  Bug rpeort by
	  Takahiro Itagaki at [pgsql-jp: 39950].  Fix suggested by Akio Ishida
	  at [pgsql-jp: 39952].

2009-08-03 19:31  t-ishii

	* parser/: kwlist.h, kwlookup.c (utags: V2_3, V2_3_1): Missing
	  files for PostgreSQL 8.4 paraser adaoptation.  Patch contributed by
	  Akio Ishida.

2009-08-01 20:41  t-ishii

	* child.c: Check MASTER_CONNECTION(p)->sp) is non 0 before further
	  referring to sp. Current implementation may interrupt in the window,
	  after setting p and before setting sp.

2009-08-01 20:40  t-ishii

	* child.c (tags: V2_2_3): Check MASTER_CONNECTION(p)->sp) is non 0
	  before further referring to sp. Current implementation may interrupt
	  in the window, after setting p and before setting sp. Per bug report
	  from Jun Kuwamura.

2009-08-01 20:34  t-ishii

	* pool_connection_pool.c: Fix pool_debug's mismatch between data
	  type and conversion specification for time_t.  Check
	  MASTER_CONNECTION(p)->sp) is non 0 before further referring to sp.
	  Current implementation may interrupt in the window, after setting p
	  and before setting sp.

2009-08-01 12:20  t-ishii

	* test/parser/: parse_schedule, input/v84.sql (utags: V2_3,
	  V2_3_1): parser test for PostgreSQL 8.4 or later.  Patch
	  contributed by Akio Ishida.

2009-07-30 23:44  t-ishii

	* pool_process_query.c, pool_rewrite_outfuncs.c, pool_type.h,
	  parser/Makefile.am (tags: V2_3_1, V2_3), parser/Makefile.in
	  (tags: V2_3), parser/copyfuncs.c (tags: V2_3_1, V2_3),
	  parser/gram.c (tags: V2_3_1, V2_3), parser/gram.h (tags: V2_3_1,
	  V2_3), parser/gram.y (tags: V2_3_1, V2_3), parser/keywords.c
	  (tags: V2_3_1, V2_3), parser/keywords.h (tags: V2_3_1, V2_3),
	  parser/makefuncs.c (tags: V2_3_1, V2_3), parser/makefuncs.h
	  (tags: V2_3_1, V2_3), parser/nodes.c (tags: V2_3_1, V2_3),
	  parser/nodes.h (tags: V2_3_1, V2_3), parser/outfuncs.c,
	  parser/parsenodes.h (tags: V2_3_1, V2_3), parser/parser.c (tags:
	  V2_3_1, V2_3), parser/pool_memory.h (tags: V2_3_1, V2_3),
	  parser/pool_parser.h (tags: V2_3_1, V2_3), parser/primnodes.h
	  (tags: V2_3_1, V2_3), test/parser/Makefile (tags: V2_3_1, V2_3),
	  test/parser/expected/copy.out (tags: V2_3_1, V2_3),
	  test/parser/expected/create.out (tags: V2_3_1, V2_3),
	  test/parser/expected/cursor.out (tags: V2_3_1, V2_3),
	  test/parser/expected/delete.out (tags: V2_3_1, V2_3),
	  test/parser/expected/insert.out, test/parser/expected/misc.out
	  (tags: V2_3_1, V2_3), test/parser/expected/prepare.out (tags:
	  V2_3_1, V2_3), test/parser/expected/privileges.out (tags: V2_3_1,
	  V2_3), test/parser/expected/select.out,
	  test/parser/expected/update.out (tags: V2_3_1, V2_3): Adopt
	  PostgreSQL 8.4 parser. Patch contributed by Akio Ishida.

2009-07-30 16:46  t-ishii

	* pool_process_query.c: Fix typo in comment

2009-07-28 14:52  y-mori

	* doc/: pgpool-en.html (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3),
	  pgpool-ja.html: add restrictions for parallel mode

	     -Natural Join
	       => not support
	     -USING CLAUSE at Join Expression
	       => auto convert to ON CLAUSE

2009-07-28 09:34  t-ishii

	* pool_process_query.c: Fix typo in comment

2009-07-26 18:14  t-ishii

	* pool_rewrite_outfuncs.c: Fix breakage by previous commit.  Patch
	  by Guillaume Lelarge.

2009-07-26 18:04  t-ishii

	* pool_rewrite_outfuncs.c: Fix breakage by previous commit.  Patch
	  by Guillaume Lelarge.

2009-07-26 12:09  t-ishii

	* pool_rewrite_outfuncs.c: fix: Join statment in parallel query

	       sample)
	       Accouts table is defined by dist_def,
	       the below query is executed as loadbalance.

	       SELECT a.aid
	         FROM
	           accounts as a
	         JOIN
	           accounts as b
	         ON  a.aid=b.aid
	         WHERE a.aid =1 or a.aid=2;

2009-07-26 12:01  t-ishii

	* pool_process_query.c: Fix comment about load balancing.

2009-07-26 11:57  t-ishii

	* pool_sema.c (tags: V2_2_3), pool_sema.c: Fix various
	  pool_error/log format errors.  Patch provided by Akio Ishida.

2009-07-24 21:30  y-mori

	* pool_rewrite_outfuncs.c: fix: Join statment in parallel query

	       sample)
	       Accouts table is defined by dist_def,
	       the below query is executed as loadbalance.

	       SELECT a.aid
	         FROM
	           accounts as a
	         JOIN
	           accounts as b
	         ON  a.aid=b.aid
	         WHERE a.aid =1 or a.aid=2;

2009-07-22 17:51  t-ishii

	* child.c, main.c, pool.h, pool_process_query.c,
	  pool_proto_modules.c, pool_rewrite_outfuncs.c, pool_shmem.c: Fix
	  various pool_error/log format errors.  Patch provided by Akio
	  Ishida.

2009-07-22 17:46  t-ishii

	* child.c, main.c (tags: V2_2_3), pool.h (tags: V2_2_4, V2_2_3),
	  pool_process_query.c, pool_proto_modules.c,
	  pool_rewrite_outfuncs.c, pool_shmem.c (tags: V2_2_3): Fix various
	  pool_error/log format errors.  Patch provided by Akio Ishida.

2009-07-22 17:26  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h:
	  Query cancel by statement timeout does not generate "kind mismatch"
	  error any more.  How to reproduce the test case:

	  Directory connect to PostgreSQL.  T1: BEGIN; T1: LOCK TABLE t1;

	  T2: SET statement_timeout TO 5000; T2: UPDATE t1 SET ...

	  UPDATE query aborts and error message comes out on T2: ERROR:
	  canceling statement due to statement timeout

	  A side effect of this is, statement timeout works correctly (rather
	  than statement timeout value * # of node).

	  Note that to initiate T1 by directory connecting to slave node will
	  not work (still results in kind mismatch error). But I don't think
	  this could happend in the real world.

	  Also refactor error detecting modules (detect_deadlock_error and so
	  on).

2009-07-22 14:33  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h
	  (tags: V2_2_3): Query cancel by statement timeout does not
	  generate "kind mismatch" error any more.  How to reproduce the test
	  case:

	  Directory connect to PostgreSQL.  T1: BEGIN; T1: LOCK TABLE t1;

	  T2: SET statement_timeout TO 5000; T2: UPDATE t1 SET ...

	  UPDATE query aborts and error message comes out on T2: ERROR:
	  canceling statement due to statement timeout

	  A side effect of this is, statement timeout works correctly (rather
	  than statement timeout value * # of node).

	  Note that to initiate T1 by directory connecting to slave node will
	  not work (still results in kind mismatch error). But I don't think
	  this could happend in the real world.

	  Also refactor error detecting modules (detect_deadlock_error and so
	  on).

2009-07-21 18:48  t-ishii

	* main.c: Check read(2) error in health_check(). This should detect
	  case described in message below, i.e. postmaster is blocked by
	  SIGSTOP.

	  Subject: [Pgpool-general] Healt Check issues From: Vctrjsn@gmail.com
	  To: pgpool-general@pgfoundry.org Date: Sun, 05 Jul 2009 18:01:18
	  +0000

2009-07-21 12:59  t-ishii

	* ChangeLog: Update Change. We are getting closer to 2.2.3.

2009-07-21 10:43  t-ishii

	* pool.h, pool_proto_modules.c: Check frontend connection while
	  waiting for response from backend for extended protocol (Execute()).
	  Replace synchronize() with wait_for_query_response().  Also tweak
	  pool.h so that it includes cancel packet's mazic proto number.

2009-07-21 10:36  t-ishii

	* pool.h, pool_proto_modules.c: Check frontend connection while
	  waiting for response from backend for extended protocol (Execute()).
	  Replace sychronize() with wait_for_query_response().  Also tweak
	  pool.h so that it includes cancel packet's mazic proto number.

2009-07-21 09:30  t-ishii

	* pool_process_query.c: Do not start transaction if the command is
	  CLUSTER with no argument

2009-07-21 09:26  t-ishii

	* pool_process_query.c: Do not start transaction if the command is
	  CLUSTER with no argument

2009-07-20 21:21  t-ishii

	* child.c, pool.h, pool_process_query.c, pool_proto_modules.c,
	  pool_proto_modules.h: Check frontend connection while waiting for
	  response from backend.  This is done in wait_for_query_response() by
	  writing a dummy parameter status packet to pgpool client every 1
	  second. If the write fails, a cancel packet is sent to backend to
	  free backend.  This is usefull to prevent pgpool child from waiting
	  forever for backend response. Pgpool client will diconnect to pgpool
	  if the query takes too long. This is typical use case for Web
	  applications.

2009-07-20 21:16  t-ishii

	* pool_process_query.c: Fix bug with SimpleForwardToFrontend().
	  Clients using the extend protocol send 'H'(Flush) after each
	  command. Problem is, SimpleForwardToFrontend does not immediately
	  forward 'C'(Command Complete) packet to frontend. So the client
	  sends 'H' and wait for 'C'. On the other hand backend receives 'H'
	  but reply back nothing since Command complete has nothing to be
	  returned. Both side stuck.

	  The fix is, forwarding 'C' packet immediately after receiving it
	  from backend. To prevent similar bugs happen in the future, I put
	  pool_flush(frontend) after calling SimpleForwardToFrontend in
	  pool_process_query() (other places already do this).

	  The extra pool_flush() might harm performance. So I did some tests
	  using pgbench -S, and found nothing has been changed regarding
	  performance after patching.

	  Bug report from Gavin Sherry along with patches for
	  SimpleForwardToFrontend().

2009-07-20 21:06  t-ishii

	* pool.h, pool_process_query.c: Add pool_set_timeout() to control
	  pool_check_fd()'s behavior.  This can be used for various places.
	  The first user is reset_backend() to fix following scenario: Do
	  COPY_FROM(for example pgbench -i) Cancel pgbench pgpool waits for
	  response from backend while sending reset queries and hang.  Backend
	  waits for data coming from pgpool forever.

	  BTW, I don't think PostgreSQL's befaviro for COPY_FROM is quite
	  correct since the doc stats:"Receipt of any other non-copy message
	  type constitutes an error that will abort the copy-in state as
	  described above" If my understanding correct, COPY_FROM should abort
	  copy-in state if it receives ABORT (issued in reset_backend).  It
	  seems PostgreSQL is not implemented as stated in the doc...

2009-07-20 20:47  t-ishii

	* child.c, pool.h, pool_process_query.c, pool_proto_modules.c,
	  pool_proto_modules.h: Check frontend connection while waiting for
	  response from backend.  This is done in wait_for_query_response() by
	  writing a dummy parameter status packet to pgpool client every 1
	  second. If the write fails, a cancel packet is sent to backend to
	  free backend.  This is usefull to prevent pgpool child from waiting
	  forever for backend response. Pgpool client will diconnect to pgpool
	  if the query takes too long. This is typical use case for Web
	  applications.

2009-07-15 15:09  t-ishii

	* pool_process_query.c: Fix bug with prepared statement
	  deallocation:

	  Subject: [Pgpool-general] Pgpool probelms From: Nimesh Satam
	  <nimesh.satam@gmail.com> To: pgpool-general@pgfoundry.org Cc: Nimesh
	  Satam <nimesh.zedo@gmail.com> Date: Wed, 17 Jun 2009 11:31:37 +0530

	  This was caused a bug in reset_backend().

	  if (qcnt >= qn + prepared_list.cnt) {
	      reset_prepared_list(&prepared_list);
	      return 2; } send_deallocate(backend, &prepared_list, qcnt - qn);
	  return 1;

	  Problem is, send_deallocate -> SimpleQuery("DEALLOCATE") calls
	  del_prepared_list, which will decrement prepared_list.cnt. In short,
	  incrementing of qcnt *and* decrementing of prepared_list.cnt happen
	  at the same time. So deallocate is only called 1/2 times than it
	  should be.

	  Bug analysis and fix provided by Akio Ishida.

2009-07-15 14:14  t-ishii

	* pool_process_query.c: Fix bug with prepared statement
	  deallocation:

	  Subject: [Pgpool-general] Pgpool probelms From: Nimesh Satam
	  <nimesh.satam@gmail.com> To: pgpool-general@pgfoundry.org Cc: Nimesh
	  Satam <nimesh.zedo@gmail.com> Date: Wed, 17 Jun 2009 11:31:37 +0530

	  This was caused a bug in reset_backend().

	  if (qcnt >= qn + prepared_list.cnt) {
	      reset_prepared_list(&prepared_list);
	      return 2; } send_deallocate(backend, &prepared_list, qcnt - qn);
	  return 1;

	  Problem is, send_deallocate -> SimpleQuery("DEALLOCATE") calls
	  del_prepared_list, which will decrement prepared_list.cnt. In short,
	  incrementing of qcnt *and* decrementing of prepared_list.cnt happen
	  at the same time. So deallocate is only called 1/2 times than it
	  should be.

	  Bug analysis and fix provided by Akio Ishida.

2009-07-14 17:42  t-ishii

	* sql/pgpool-recovery/pgpool-recovery.c (tags: V2_2_6, V2_2_5,
	  V2_2_4, V2_2_3): Update copyright year

2009-07-14 17:39  t-ishii

	* sql/pgpool-recovery/: pgpool-recovery.c, pgpool-recovery.c (tags:
	  V2_3_1, V2_3): PostgreSQL 8.4 needs to include utils/binutils.h

2009-06-26 13:59  t-ishii

	* pool_process_query.c: Fix bug with SimpleForwardToFrontend().
	  Clients using the extend protocol send 'H'(Flush) after each
	  command. Problem is, SimpleForwardToFrontend does not immediately
	  forward 'C'(Command Complete) packet to frontend. So the client
	  sends 'H' and wait for 'C'. On the other hand backend receives 'H'
	  but reply back nothing since Command complete has nothing to be
	  returned. Both side stuck.

	  The fix is, forwarding 'C' packet immediately after receiving it
	  from backend. To prevent similar bugs happen in the future, I put
	  pool_flush(frontend) after calling SimpleForwardToFrontend in
	  pool_process_query() (other places already do this).

	  The extra pool_flush() might harm performance. So I did some tests
	  using pgbench -S, and found nothing has been changed regarding
	  performance after patching.

	  Bug report from Gavin Sherry along with patches for
	  SimpleForwardToFrontend().

2009-05-27 11:01  t-ishii

	* pool.h, pool_process_query.c: Add pool_set_timeout() to control
	  pool_check_fd()'s behavior.  This can be used for various places.
	  The first user is reset_backend() to fix following scenario: Do
	  COPY_FROM(for example pgbench -i) Cancel pgbench pgpool waits for
	  response from backend while sending reset queries and hang.  Backend
	  waits for data coming from pgpool forever.

	  BTW, I don't think PostgreSQL's befaviro for COPY_FROM is quite
	  correct since the doc stats:"Receipt of any other non-copy message
	  type constitutes an error that will abort the copy-in state as
	  described above" If my understanding correct, COPY_FROM should abort
	  copy-in state if it receives ABORT (issued in reset_backend).  It
	  seems PostgreSQL is not implemented as stated in the doc...

2009-05-24 22:56  t-ishii

	* sql/pgpool-recovery/Makefile (tags: V2_2_6, V2_2_5, V2_2_4,
	  V2_2_3): Support pre 8.0 PostgreSQL which does not have pg_config
	  --pgxs option.  Patch provided by Enrico Pirozzi with slight
	  modification by Tatsuo Ishii

2009-05-24 17:43  t-ishii

	* sql/pgpool-recovery/Makefile (tags: V2_3_1, V2_3): Support pre
	  8.0 PostgreSQL which does not have pg_config --pgxs option.  Patch
	  provided by Enrico Pirozzi with slight modification by Tatsuo Ishii

2009-05-12 10:01  t-ishii

	* doc/: pgpool-en.html: Fix description of client_idle_limit

2009-05-05 11:07  t-ishii

	* configure.in, configure, NEWS (tags: V2_2_3) (utags: V2_2_2):
	  prepare 2.2.2

2009-05-05 11:04  t-ishii

	* doc/pgpool-ja.html (tags: V2_2_2): Add 2.2.2 release note

2009-05-02 17:48  t-ishii

	* pool_process_query.c, pool_process_query.c (tags: V2_2_2): Fix
	  is_select_query() to test "sql" parameter is NULL.  As of 2.2,
	  pgpool sets Portal->sql_string to NULL for SQL command PREPARE.
	  Usually this is ok, since in most cases SQL command EXECUTE follows
	  anyway. Problem is, some applications mix PREPARE with extended
	  protocol command "EXECUTE" and so on. Execute() seems to think this
	  never happens but it is not real. Someday we should extract actual
	  query string from PrepareStmt->query and set it to
	  Portal->sql_string.

2009-05-02 17:45  t-ishii

	* pool_stream.c (tags: V2_2_3, V2_2_2), pool_stream.c: Fix
	  pool_flush() so that it ignores error on frontend connection.  This
	  is needed to continue processing with backend, otherwise we risk
	  data incositency.

2009-05-02 17:41  t-ishii

	* child.c (tags: V2_2_2), child.c: Call pool_send_frontend_exits()
	  before pool_discard_cp() when resetting connection fails. This will
	  avoid "unexpected EOF on client connection" error on when pgpool
	  client exits abnormaly

2009-05-01 09:39  t-ishii

	* pool_proto_modules.c (tags: V2_2_2): Add missing patches for
	  this:

	  2009-04-08 20:11  t-ishii

	  	* pool_proto_modules.c (V2_2_STABLE): In master slave mode,
	  	  sometimes DEALLOCATE fails. This is caused by that the first
	  	  PREPARE was not executed on the slave.  Patch contributed by
	  	  Toshihiro Kitagawa.

2009-05-01 09:37  t-ishii

	* pool_proto_modules.c: Add missing patches for this:

	  date: 2009/04/08 11:12:11;  author: t-ishii;  state: Exp;  lines:
	  +15 -14 In master slave mode, sometimes DEALLOCATE fails. This is
	  caused by that the first PREPARE was not executed on the slave.
	  Patch contributed by Toshihiro Kitagawa.

2009-04-25 16:20  t-ishii

	* ChangeLog (tags: V2_2_2, V2_2_1): prepare for 2.2.1

2009-04-25 16:16  t-ishii

	* configure.in, configure (utags: V2_2_1): prepare for 2.2.1

2009-04-25 16:12  t-ishii

	* doc/pgpool-ja.html (tags: V2_2_1): Add 2.2.1 release note

2009-04-25 16:05  t-ishii

	* NEWS (tags: V2_2_1): Prepare 2.2.1

2009-04-08 20:11  t-ishii

	* pool_proto_modules.c (tags: V2_2_1), pool_proto_modules.c: In
	  master slave mode, sometimes DEALLOCATE fails. This is caused by
	  that the first PREPARE was not executed on the slave.  Patch
	  contributed by Toshihiro Kitagawa.

2009-04-03 22:49  t-ishii

	* doc/: pgpool-en.html (tags: V2_2_2, V2_2_1), pgpool-ja.html: Add
	  documents about configuration reloading.

2009-04-03 22:43  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html: Add documents about
	  configuration reloading.

2009-04-03 22:30  t-ishii

	* pool_proto_modules.c: Fix SimpleQuery() to properly check
	  extended query related commands.  Before it ignores them if query is
	  not NULL. This is problematic if frontend == NULL, which could
	  happen with queries defined in reset_query_list. The bug had been
	  there since 2.1 BTW.

2009-04-03 19:21  t-ishii

	* pgpool.spec, redhat/pgpool.conf.sample.patch (tags: V2_2_6),
	  redhat/pgpool.init (utags: V2_2_1, V2_2_2, V2_2_3, V2_2_4,
	  V2_2_5): Merge changes made on HEAD regarding RPM spec files

2009-03-23 10:14  devrim

	* pgpool.spec, redhat/pgpool.init:
	  - Own /usr/share/pgpool-II directory.
	  - Fix pid file path in init script, per pgcore #81.
	  - Fix spec file -- we don't use short_name macro in pgcore spec
	  file.
	  - Create pgpool pid file directory, per pgcore #81.
	  - Fix stop/start routines, also improve init script a bit.
	  - Install conf files to a new directory (/etc/pgpool-II), and get
	    rid of sample conf files.

2009-03-23 10:13  devrim

	* redhat/pgpool.conf.sample.patch (tags: V2_3_1, V2_3): Add a patch
	  which configures sample conf file to match RPM and Red Hat defaults.

2009-03-14 12:39  t-ishii

	* pool_process_query.c, pool_process_query.c (tags: V2_2_1): Fix
	  need_insert_lock so that it returns false if the protocol version is
	  2. insert_lock has not been working for V2 protocol anyway, so this
	  is ok.

2009-03-09 00:00  gleu

	* main.c, pgpool.8.in, doc/pgpool-en.html: Update usage function,
	  doc and man page.

2009-03-08 23:58  gleu

	* main.c, pgpool.8.in (tags: V2_2_5, V2_2_4, V2_2_3) (utags:
	  V2_2_1, V2_2_2): Update usage function and man page.

2009-03-07 18:19  t-ishii

	* pool_process_query.c: Add a comment to need_insert_lock() if the
	  query being used to check if the table has SERIAL column is valid
	  for PostgreSQL 7.3 to 8.3.

2009-03-07 08:54  t-ishii

	* pool_process_query.c: Make excessive message level in
	  read_kind_from_backend from LOG to DEBUG.

2009-03-07 08:49  t-ishii

	* pool_process_query.c: Make excessive message level in
	  read_kind_from_backend from LOG to DEBUG.

2009-03-06 18:35  gleu

	* main.c: Add support for long options name in pgpool command.

2009-03-01 22:34  t-ishii

	* doc/pgpool-ja.html: Fix release note for 2.2

2009-03-01 22:22  t-ishii

	* doc/pgpool-ja.html: Fix release note for 2.2

2009-02-28 15:33  t-ishii

	* Makefile.in (tags: V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0): Update Makefile.am

2009-02-28 15:33  t-ishii

	* Makefile.am (tags: V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0): Add doc/load_balance.png, doc/load_balance.odp

2009-02-28 15:29  t-ishii

	* Makefile.in: Update Makefile.am

2009-02-28 15:25  t-ishii

	* Makefile.am: Add doc/load_balance.png, doc/load_balance.odp

2009-02-28 13:45  t-ishii

	* ChangeLog, NEWS, TODO (tags: V2_2_3, V2_2_2, V2_2_1), configure
	  (utags: V2_2_0): Version 2.2

2009-02-28 13:40  t-ishii

	* configure.in (tags: V2_2_0): Version 2.2

2009-02-24 11:20  t-ishii

	* pool_auth.c (tags: V2_2_3, V2_2_2, V2_2_1), pool_process_query.c
	  (utags: V2_2_0): Prpare for receiving parameter status packets.

	  If postgresql.conf was changed and reloaded, PostgreSQL sends
	  parameter status packets asynchronously even those changed
	  parameters are not one of session_authorization etc., which is
	  marked as GUC_REPORT in guc.c(GUC_REPORT means parameter status
	  packet is sent if its value is changed).

	  After receiving those packets, they are discarded. I think this is
	  harmless since most of changes are not affected to the frontend
	  behavior.

2009-02-21 19:00  t-ishii

	* TODO, configure, ChangeLog (utags: V2_2_0_RC2): pgpool-II 2.2 RC2

2009-02-21 18:56  t-ishii

	* configure.in (tags: V2_2_0_RC2): pgpool 2.2 RC2

2009-02-21 18:52  t-ishii

	* doc/load_balance.png (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2): A load balance logic
	  explanation figure

2009-02-21 18:47  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html (utags: V2_2_0, V2_2_0_RC2):
	  Add comment about rsync and autovacuum.

2009-02-20 10:34  t-ishii

	* pool_process_query.c (tags: V2_2_0_RC2): Fix
	  pool_send_frontend_exits() so that it checks the connection to
	  backend if it actually exists. This is needed, for example, in the
	  final stae of online recovery. pgpool child holds 1 connection to a
	  backend. After failback one more backend added but there's no
	  connection to the backend.

2009-02-17 18:50  t-ishii

	* pool_process_query.c: Do not start internal transaction if CREATE
	  INDEX CONCURRENTLY

2009-02-17 15:16  devrim

	* pgpool.spec (tags: V2_2_0, V2_2_0_RC2): Update to 2.2 (Download
	  URL is broken, since we don't know yet the pgfoundry download URL
	  yet)

2009-02-15 14:35  t-ishii

	* configure (tags: V2_2_0_RC1): run autoconf

2009-02-15 14:32  t-ishii

	* configure.in (tags: V2_2_0_RC1): 2.2 RC1

2009-02-15 14:31  t-ishii

	* ChangeLog (tags: V2_2_0_RC1): Update Changelog

2009-02-15 14:29  t-ishii

	* TODO (tags: V2_2_0_RC1): Mention that two items were resolved

2009-02-15 14:26  t-ishii

	* pgpool.conf.sample (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2), doc/pgpool-en.html,
	  doc/pgpool-ja.html (utags: V2_2_0_RC1): Reflect the fact that
	  DISCARD ALL holds exclusive lock on pg_listener, thus will degrade
	  performance.

2009-02-10 10:11  t-ishii

	* pool_process_query.c (tags: V2_2_0_RC1): Fix
	  is_internal_transaction_needed() so that DROP DATABASE does not
	  start internal transaction

2009-02-07 21:57  t-ishii

	* configure (tags: V2_2_0_BETA2): Run autoconf

2009-02-07 21:57  t-ishii

	* configure.in (tags: V2_2_0_BETA2): Update version

2009-02-07 21:52  t-ishii

	* NEWS (tags: V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2): Update NEWS

2009-02-07 00:30  t-ishii

	* pool_process_query.c (tags: V2_2_0_BETA2): Add pid_file_name to
	  show pool_status

2009-02-05 17:24  t-ishii

	* doc/pgpool-ja.html (tags: V2_2_0_BETA2): Fix typo

2009-02-05 09:33  t-ishii

	* ChangeLog (tags: V2_2_0_BETA2): Run cvs2cl.pl -t --fsf

2009-02-05 09:30  t-ishii

	* doc/pgpool-ja.html: Add more fix to release info

2009-02-05 09:26  t-ishii

	* recovery.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2): Fix online recovery to wait for
	  failback done before allowing to accept connections from clients. It
	  was supposed to work like this but actually was not since the day 0
	  when online recovery was born. Without the fix there could be
	  potential data inconsistency among DB nodes.

2009-02-05 09:24  t-ishii

	* main.c (tags: V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2):
	  Fix/add comments

2009-02-01 19:13  t-ishii

	* NEWS: Add new item

2009-02-01 19:11  t-ishii

	* pool_process_query.c: Start internal transaction if necessary.
	  Before we only started transaction INSERT, UPDATE, DELETE and
	  SELECT. Obviously we need to start transaction other than these, for
	  example CREATE TABLE.  To avoid an overhead to look up large number
	  of statements (currently 70), we use bsearch() now.

2009-01-31 22:17  t-ishii

	* doc/pgpool-ja.html: Update release note

2009-01-30 17:15  t-ishii

	* test/jdbc/README.euc_jp (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2): Add comment how to add CLASSPATH

2009-01-30 09:06  y-mori

	* pool_rewrite_query.c, pool_rewrite_query.h (tags: V2_3_1, V2_2_6,
	  V2_3, V2_2_5, V2_2_4) (utags: V2_2_0, V2_2_0_BETA2, V2_2_0_RC1,
	  V2_2_0_RC2, V2_2_1, V2_2_2, V2_2_3): Add comment

2009-01-28 15:48  t-ishii

	* NEWS: Add more items

2009-01-27 10:04  t-ishii

	* COPYING (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2):
	  Update copyright year

2009-01-25 20:13  t-ishii

	* NEWS, TODO (tags: V2_2_0_BETA2), configure, configure.in,
	  version.h (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2), doc/pgpool-en.html
	  (tags: V2_2_0_BETA2), doc/pgpool-ja.html (utags: V2_2_0_BETA1):
	  Prepare 2.2 beta1

2009-01-25 19:13  t-ishii

	* main.c, pool.h (tags: V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2), pool_config.l (tags: V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2), pgpool.conf.sample (tags: V2_2_0_BETA2),
	  pool_config.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2) (utags: V2_2_0_BETA1): Add
	  pid_file_name directive

2009-01-25 13:32  t-ishii

	* ChangeLog (tags: V2_2_0_BETA1): ChangeLog is now generated by
	  using cvs2cl.pl -t --fsf

2009-01-25 09:09  t-ishii

	* pool_rewrite_query.c (tags: V2_2_0_BETA1): Remove unused static
	  function check_whereClause() Update Copyright year

2009-01-24 20:34  t-ishii

	* pool.h: Include limit.h. This seems to be necessary Fedra box.
	  Update copyright year

2009-01-22 18:29  y-mori

	* pool_stream.c (tags: V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1): Fix different function name was used
	  in the error message.

2009-01-22 18:16  y-mori

	* pool_process_query.c (tags: V2_2_0_BETA1), pool_proto_modules.c
	  (tags: V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1), pool_rewrite_query.c, pool_rewrite_query.h (tags:
	  V2_2_0_BETA1): add the comment related to parallel query

2009-01-22 09:50  t-ishii

	* child.c (tags: V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1): Remove unnecessary function
	  declaration for child_exit()

	  Add comments to child_exit() which had no comments at all

	  Modify child_exit() so that it sends terminate mesagges before
	  exiting. This will prevent backend process from being idle waiting
	  for TCP keepalive event occurs.  This is not good since a backend
	  process may hold locking on certain tables.

2009-01-22 09:45  t-ishii

	* pool_process_query.c: Modify pool_send_frontend_exits() so that
	  it change fd to non block while sending terminate message (X) to
	  backend.  This should prevent pgpool from being blocked while
	  sending data to socket.

2009-01-21 10:43  t-ishii

	* pool_process_query.c: Add debug code and message

2009-01-18 22:54  t-ishii

	* ps_status.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1): Fix FreeBSD case. patch
	  provided by Jun Kuriyama.

2009-01-14 23:54  t-ishii

	* pool_process_query.c: Fix excessive debug statement

2009-01-07 22:33  t-ishii

	* pool_process_query.c: Add new argument to detect_error() so that
	  it can recognize the error class (E or N). per bug report from
	  Daniel: From: Daniel.Crespo@l-3com.com To:
	  <pgpool-general@pgfoundry.org> Date: Tue, 6 Jan 2009 12:50:08 -0500

	  The bug was caused by detect_postmaster_down_error() not detecting
	  receive crash shutdown error.

	  Enbug by: Subject: [Pgpool-committers] pgpool - pgpool-II: Fix
	  detect_error() so that it ignores NOTICE.  From:
	  t-ishii@pgfoundry.org (User T-ishii) To:
	  pgpool-committers@pgfoundry.org Date: Tue, 30 Dec 2008 01:05:37
	  +0000 (UTC)

2009-01-07 22:27  t-ishii

	* pool_connection_pool.c (tags: V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1), pool_proto_modules.c:
	  Update copyright year

2009-01-02 18:38  t-ishii

	* pool_process_query.c: Emit pool_error when detects kind mismatch
	  error.  Before we only sent error messages to client, but this will
	  leave only on client, which may or may not be kept.  Leaving it on
	  pgpool log should leave on pgpool side at least.

2008-12-31 23:45  t-ishii

	* child.c, main.c: Fix typos in comments. Patch contributed by Jun
	  Kuriyama.

2008-12-31 23:42  t-ishii

	* pool_sema.c (tags: V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1): Enhance error message
	  when failed to create semaphores.  Patch contributed by Jun
	  Kuriyama.

2008-12-31 19:25  t-ishii

	* pcp/: pcp.c, pcp.h, pcp_attach_node.c, pcp_detach_node.c,
	  pcp_node_count.c, pcp_node_info.c, pcp_proc_count.c,
	  pcp_proc_info.c, pcp_recovery_node.c, pcp_stop_pgpool.c,
	  pcp_systemdb_info.c (utags: V2_2_0, V2_2_0_BETA1, V2_2_0_BETA2,
	  V2_2_0_RC1, V2_2_0_RC2, V2_2_1, V2_2_2, V2_2_3, V2_2_4, V2_2_5,
	  V2_2_6, V2_3, V2_3_1): Add -d (debug)option to pcp commands.
	  patch contributed by Jun Kuriyama

2008-12-30 21:16  t-ishii

	* pool.h, pool_process_query.c, pool_proto_modules.c: Enhance "kind
	  mismatch" error message to include original query.  This would not
	  work for extended query, though.

2008-12-30 10:05  t-ishii

	* pool_process_query.c: Fix detect_error() so that it ignores
	  NOTICE.  Without this following error occurs, for example:

	  BEGIN; BEGIN;

	  ERROR:  kind mismatch among backends 0[N] 1[E]

2008-12-30 09:59  t-ishii

	* child.c, main.c, pool.h, pool_auth.c (tags: V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1), pool_type.h (tags:
	  V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1): Fix bug with
	  query cancel. It seems this has not been working since pgpool-II was
	  born.

	  To fix this, now we have each connection's pid and cancel key in the
	  shared memory area. If a cancel packet is sent, the table is
	  searched by the pid and the cancel key. If found, the actual cancel
	  key is sent to each backend.

2008-12-27 16:26  t-ishii

	* config.h.in (tags: V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1):
	  Update timestamp

2008-12-23 21:26  t-ishii

	* pool_process_query.c: Fix unnessary code(maybe copy & paste
	  error?) Take out internal transction starting code from insert_lock.

2008-12-23 21:24  t-ishii

	* pool_proto_modules.c: Fix Query() so that it starts transaction
	  *before* checking insert lock is needed or not

2008-12-23 21:21  t-ishii

	* child.c: Do not make a connection cache for postgres database

2008-12-21 21:57  t-ishii

	* pgpool.conf.sample: Change insert_lock's default value to true.
	  Since automatic SERIAL data type is implemented, always making
	  insert_lock to true is harmless.

2008-12-21 08:02  t-ishii

	* pool.h, pool_config.c, pool_process_query.c: If SERIAL data type
	  is used(checked in system catalog)  and insert_lock is true(now
	  default) then automatically lock the table.

2008-12-21 07:59  t-ishii

	* pool_config.l: Now insert_lock is defaulted to be true

2008-12-20 20:21  t-ishii

	* pool_process_query.c: Fix need_insert_lock() so that it runs a
	  little bit faster with no INSERT case.

2008-12-20 20:12  t-ishii

	* pool_proto_modules.c: Enhance and fix comments related to Query()

2008-12-13 20:25  t-ishii

	* parser/gram.c (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0), Makefile.am, Makefile.in, parser/gram.h (tags:
	  V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0) (utags:
	  V2_2_0_BETA1, V2_2_0_BETA2, V2_2_0_RC1, V2_2_0_RC2): Update
	  generated files

2008-12-13 20:23  t-ishii

	* pool_process_query.c, pool_proto_modules.c, pool_proto_modules.h
	  (tags: V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1): Refactor pool_process_query.c. Now
	  it is devided into pool_process_query.c and pool_proto_modules.c.
	  Also pool_proto_modules.h added which is a companion header file.

2008-12-13 20:21  t-ishii

	* main.c: Fix comment

2008-12-13 17:20  t-ishii

	* pool_process_query.c: Fix Execute() to avoid kind mismatch error
	  caused by "SET TRANSACTION ISOLATION LEVEL must be called before any
	  query".

2008-12-13 17:13  t-ishii

	* pool_process_query.c: Avoid kind mismatch error caused by "SET
	  TRANSACTION ISOLATION LEVEL must be called before any query".  This
	  could happen in following scenario:

	   * M:S1:BEGIN;
	   * S:S1:BEGIN;
	   * M:S1:SELECT 1; <-- only sent to MASTER
	   * M:S1:SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
	   * S:S1:SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
	   * M: <-- error
	   * S: <-- ok since no previous SELECT is sent. kind mismatch error
	   occurs!

	  Fix ReadyForQuery() by calling pool_unread if backend after
	  do_error_command executed not returns read for query packet.

	  Fix comments

2008-12-08 22:48  t-ishii

	* pool_process_query.c: Check serialization failure error and abort
	  all nodes if so. Otherwise we allow data inconsistency among DB
	  nodes. See following scenario: (M:master, S:slave)

	  M:S1:BEGIN; M:S2:BEGIN; S:S1:BEGIN; S:S2:BEGIN; M:S1:SET TRANSACTION
	  ISOLATION LEVEL SERIALIZABLE; M:S2:SET TRANSACTION ISOLATION LEVEL
	  SERIALIZABLE; S:S1:SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
	  S:S2:SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; M:S1:UPDATE t1
	  SET i = i + 1; S:S1:UPDATE t1 SET i = i + 1; M:S2:UPDATE t1 SET i =
	  i + 1; <-- blocked S:S1:COMMIT; M:S1:COMMIT; M:S2:ERROR:  could not
	  serialize access due to concurrent update S:S2:UPDATE t1 SET i = i +
	  1; <-- success in UPDATE and data becomes inconsistent!

2008-12-08 21:38  t-ishii

	* pool_process_query.c: Forget to add free_string()

2008-12-08 21:32  t-ishii

	* pool_process_query.c: Fix uninitialized variable in
	  read_kind_from_backend.  Also refactor to make it more effective and
	  readable.  Add lots of comments and enhance error message to display
	  eacho kinds.

2008-12-05 23:38  t-ishii

	* pool_process_query.c: Fix client_idle_limit_in_recovery handling
	  not to hang when goes into 2nd stage.  Also fix grammatical errors
	  in comments.

2008-11-27 09:30  t-ishii

	* pool_auth.c: Fix thoughtless coding in MD5 case checking. We
	  should have considered raw mode case. Bug pointed out by Duco Fijma.
	  See discussions below for more details.  Subject: [Pgpool-general]
	  MD5 authentication in "raw mode" From: Duco Fijma <duco@fijma.net>
	  To: pgpool-general@pgfoundry.org Date: Tue, 25 Nov 2008 13:29:39
	  +0100

2008-11-15 16:10  t-ishii

	* pool_process_query.c: Fix pool_discard_packet. Missing statement
	  in the last commit.

2008-11-15 15:15  t-ishii

	* pool_process_query.c: Fix do_error_command. If mistakely assumed
	  that after sending an error query, always ReadyForQuery came right
	  after that. If some debugging or logging verboseness is set,
	  PostgreSQL might sends NOTICE before ReadyForQuery.

2008-11-12 22:42  t-ishii

	* pool_process_query.c: Fix do_command in case of notice message
	  sent right after Complete command response. See threads in
	  pgpool-general:

	  Subject: Re: [Pgpool-general] Pgpool-II - replication problems From:
	  "nir osovsky" <nosovsky1@gmail.com>

	  for more details.

2008-11-10 09:58  t-ishii

	* pool_process_query.c: Enhance error message in do_command

2008-11-07 18:20  t-ishii

	* ChangeLog, Makefile.in, aclocal.m4 (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1), configure,
	  pgpool.conf.sample, pool.h, pool_config.c, pool_config.l,
	  pool_process_query.c, pool_stream.c, doc/pgpool-en.html,
	  doc/pgpool-ja.html, parser/Makefile.in (tags: V2_2_6, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1), pcp/Makefile.in (tags: V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1): Add
	  client_idle_limit_in_recovery

2008-10-31 14:21  t-ishii

	* doc/load_balance.odp (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1): Add a flow chart which explains load
	  balance/replication/send to master only is decided.

2008-10-31 10:31  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html: Fix wording Fix description
	  for replicate_select and "condition for load balance" section.

2008-10-31 10:28  t-ishii

	* pgpool.conf.sample: Fix incorrect comment for recovery_timeout

2008-09-05 13:25  t-ishii

	* main.c: Fix and enhance comments

2008-08-29 14:17  t-ishii

	* pool_process_query.c: Allow to load balance DECLARE, FETCH and
	  CLOSE.  Also fix comments.

2008-08-29 11:54  t-ishii

	* main.c: Fix bug in fork_a_child which mistakely closed pipe fds
	  which are not created yet at the startup time

2008-08-28 21:37  t-ishii

	* pool_process_query.c: Fix/enhance log messages and comments

2008-08-28 21:35  t-ishii

	* main.c:
	  - Close all file descriptors when running in daemon mode.  Otherwise
	    we inherit socket from apache when it's started by pgpoolAdmin.
	    This results in that port 80 is occupied for example.  Pach
	    provided by Akio Ishida. Also add chdir("/"). This always good for
	    daemon programs.

	  - Always fail over and restart all children. Before we do not
	    restart if master has not been changed. This was wrong. If we have
	    trouble with network cable or something, TCP/IP stack keeps on
	    retrying for long time and the only way to prevent it is restarting
	  process.

2008-07-23 17:50  y-asaba

	* NEWS, configure, configure.in, doc/pgpool-ja.html (utags:
	  V2_1_0): Prepare for 2.1.

2008-07-08 16:53  y-mori

	* ChangeLog (tags: V2_1_0), NEWS (utags: V2_1_0_RC1): Prepare for
	  	pgpool-II 2.1 RC1.  -add comment to ChangeLog NEWS

2008-07-08 16:41  y-mori

	* NEWS: FIX indent

2008-07-08 16:37  y-mori

	* doc/pgpool-ja.html (tags: V2_1_0_RC1): Update release note
	       parallel query bug fix comment

2008-07-08 16:21  y-asaba

	* Makefile.in (tags: V2_1_0), aclocal.m4 (tags: V2_1_0), configure,
	  configure.in, parser/Makefile.in (tags: V2_1_0), pcp/Makefile.in
	  (tags: V2_1_0) (utags: V2_1_0_RC1): Prepare for pgpool-II 2.1
	  RC1.

2008-07-04 22:00  y-mori

	* pool_rewrite_outfuncs.c (tags: V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1): FIX: query rewrite of DISTINCT ON

2008-07-04 14:27  y-mori

	* pool.h (tags: V2_1_0, V2_1_0_RC1), pool_process_query.c (tags:
	  V2_1_0, V2_1_0_RC1), pool_rewrite_outfuncs.c,
	  pool_rewrite_query.c (tags: V2_1_0, V2_1_0_RC1), pool_stream.c
	  (tags: V2_1_0, V2_1_0_RC1): FIX: join partitioned tables

	  Delete: pool_read_parallel

2008-07-01 21:26  y-mori

	* pool_rewrite_outfuncs.c: fix: Converting JOIN expression from
	  USING to ON in query rewriting at parallel mode

2008-06-30 16:05  y-mori

	* pool_process_query.c: Fix Hung up when two or more insert
	  statment was executed in parallel mode

2008-05-30 16:18  y-asaba

	* pool_process_query.c: Fixed segfault if client protocol was V2.

2008-05-22 23:36  y-asaba

	* main.c (tags: V2_1_0, V2_1_0_RC1): If a backend raised FATAL
	  error while health checking, do not send a Terminate message.
	  Because sending the message fails with EPIPE.

2008-05-08 12:02  y-asaba

	* child.c (tags: V2_1_0, V2_1_0_RC1): Fix segfault if all weight
	  values are zero and master node is down.  Perf report by Michael
	  SALOMON.

2008-05-04 14:04  y-asaba

	* sql/pgpool-recovery/pgpool-recovery.c (tags: V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1): Use snprintf().

2008-04-12 03:09  devrim

	* pgpool.spec (tags: V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1): Sync with community spec file.  Fix
	  Requires: problem.

2008-04-09 16:45  y-asaba

	* redhat/pgpool.init (tags: V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1):
	  * Remove non-ascii character.
	  * Fix the daemon stdio redirection.

	  Per report by kabe-san.

2008-04-09 16:03  y-asaba

	* sample/replicate_def_pgbench.sql (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1): Fix
	  SQL error.

2008-04-09 16:01  y-asaba

	* sql/system_db.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1): Drop
	  replicate_def table if exists.

2008-04-09 15:26  devrim

	* redhat/pgpool.init:
	  - Honor /etc/sysconfig/pgpool settings. Previously we could never
	    customize PGPOOLPID=/var/run/pgpool.pid et al.
	  - Remaining hardcoded paths replaced by customizable variables
	     such as $PGPOOLCONF .

2008-04-09 15:22  y-asaba

	* Makefile.am (tags: V2_1_0, V2_1_0_RC1), Makefile.in: Add
	  sample/replicate_def_pgbench.sql into a release tar ball.

2008-04-07 01:49  devrim

	* pgpool.spec: Update to 2.1 beta2

2008-04-04 13:32  y-asaba

	* NEWS, doc/pgpool-ja.html (utags: V2_1_0_BETA2): Update 2.1
	  release note.

2008-04-03 22:10  y-asaba

	* pool_process_query.c (tags: V2_1_0_BETA2): 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. In extended query mode, we *must* send the query over
	  Execute message. Because postgres discards messages until a Sync is
	  reached when an error is detected.

2008-04-03 14:44  y-asaba

	* ChangeLog (tags: V2_1_0_BETA2): Add.

2008-04-03 14:30  y-asaba

	* pool_process_query.c: Do not close a internal transaction when
	  Sync message is received after receiving Parse message. This hack is
	  for PHP-PDO.

2008-04-02 11:48  y-asaba

	* NEWS, doc/pgpool-ja.html: Update release note.

2008-04-01 17:31  y-asaba

	* configure, configure.in (utags: V2_1_0_BETA2): Prepare for 2.1
	  beta2.

2008-04-01 10:12  y-asaba

	* pool_rewrite_outfuncs.c (tags: V2_1_0_BETA2): Fix "AS" handling
	  in FROM clause.  Patch contributed by sho-san.

2008-03-31 17:27  y-asaba

	* pgpool.8.in (tags: V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2): Enhance manpage.
	    patch contributed by kabe-san.
	  - no hypenation, no justify for better greppability
	    - have explicit subsection for [noargs], stop, switch for
	    readability
	  - some phrases rewritten to suit manpages
	    - add "-v" option

2008-03-31 17:07  y-asaba

	* ChangeLog: Add items.

2008-03-31 13:19  t-ishii

	* TODO (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2): Add Docs section
	  and add an item (writelibpcp docs)

2008-03-31 11:56  y-asaba

	* NEWS, doc/pgpool-ja.html: Add a item into 2.1 release note.

2008-03-28 01:06  y-asaba

	* child.c, pool_hba.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1) (utags: V2_1_0_BETA2): Use child_exit() instead of
	  exit().

2008-03-28 01:04  y-asaba

	* pcp_child.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2), recovery.c (utags: V2_1_0,
	  V2_1_0_BETA2, V2_1_0_RC1, V2_2_0_BETA1): Fix a race condition
	  between SIGUSR2 signal and pause().

2008-03-28 01:01  y-asaba

	* pool_connection_pool.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2):
	  Fix core dump with the following scenario.
	    1. detach a node.
	    2. create connection pool
	    3. attach the node.
	    4. reuse the connection pool

2008-03-27 17:26  y-asaba

	* doc/pgpool-ja.html: Remove a wrong restriction.

2008-03-27 16:54  y-asaba

	* doc/: pgpool-en.html (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2),
	  pgpool-ja.html, pgpool.css (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2),
	  tutorial-en.html (tags: V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2), tutorial-ja.html (tags: V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2):
	  Add copyright.

2008-03-27 16:24  y-asaba

	* doc/: tutorial-en.html, tutorial-ja.html: Add an example to
	  rotate pgpool log files.

2008-03-27 11:53  y-asaba

	* pool_process_query.c: Improve network I/O routine.

2008-03-27 11:51  t-ishii

	* doc/pgpool-en.html: Add description about the timing of recovery
	  command invocation

2008-03-27 11:49  t-ishii

	* TODO: Add TODO items

2008-03-26 18:18  t-ishii

	* doc/pgpool-ja.html: Add description about the timing of recovery
	  command invocation

2008-03-25 14:15  t-ishii

	* TODO: Add more TODO

2008-03-25 10:00  t-ishii

	* TODO: Translate into English

2008-03-20 17:33  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html: Enhance reset_query_list
	  description.

2008-03-20 16:33  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html: Add info about pgpool-II
	  download page.

2008-03-18 17:39  y-asaba

	* pgpool.conf.sample (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2):
	  Remove ";" in recovery_timeout.

2008-03-14 16:09  y-asaba

	* doc/: pgpool-en.html, pgpool-ja.html (utags: V2_1_0_BETA1):
	  * Changed title from README to user manual.
	  * Emphasized load balancing note.

2008-03-14 16:06  y-asaba

	* doc/pgpool.css (tags: V2_1_0_BETA1): Add <h4> style.

2008-03-14 15:57  y-asaba

	* NEWS (tags: V2_1_0_BETA1): Reviewed.

2008-03-14 15:53  y-asaba

	* doc/pgpool-en.html: Updated English documentation.

2008-03-14 15:30  y-asaba

	* doc/pgpool-ja.html: Add recovery_timeout description.

2008-03-14 14:45  y-asaba

	* NEWS: Added 2.1 beta release note.  I hope to review it.

2008-03-14 11:43  y-asaba

	* doc/pgpool-ja.html: Added 2.1 release note.

2008-03-14 11:00  y-asaba

	* pgpool.conf.sample (tags: V2_1_0_BETA1): Add comment for '%M'
	  format.

2008-03-14 10:35  y-asaba

	* ChangeLog (tags: V2_1_0_BETA1): Add entries.

2008-03-13 22:11  y-asaba

	* pool_process_query.c (tags: V2_1_0_BETA1):
	  * Fixed kind mismatch error in master slave mode with following
	    scenario. This bug was introduced in pgpool-II v2.0.

	    BEGIN;
	    SET client_encoding TO SJIS;

	  * Fixed load balancing in master slave mode. This bug was introduced
	    in pgpool-II v2.0.

2008-03-13 16:01  y-asaba

	* pg_md5.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1): Fix compile error on FreeBSD.  Per
	  report by ISHIDA Akio.

2008-03-13 12:46  y-asaba

	* ylwrap (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1):
	  Add ylwrap generated by automake 1.10.

2008-03-13 03:22  devrim

	* pgpool.spec (tags: V2_1_0_BETA2, V2_1_0_BETA1): Update to 2.1
	  beta1

2008-03-12 21:33  y-asaba

	* configure, configure.in (utags: V2_1_0_BETA1): Stamp beta1.

2008-03-12 18:33  t-ishii

	* pgpool.conf.sample: Fix comments for load_balance_mode which were
	  no longer true.

2008-03-12 18:32  y-asaba

	* pool_config.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1): Run flex v2.5.33

2008-03-12 18:32  y-asaba

	* version.h (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1):
	  Change version string.

2008-03-12 18:31  y-asaba

	* child.c (tags: V2_1_0_BETA1), pool_process_query.c: If
	  load_balance_mode is false, then pgpool does not calculate load
	  balancing node.

2008-03-12 14:06  y-asaba

	* main.c (tags: V2_1_0_BETA2, V2_1_0_BETA1): health_check_timeout
	  did not work correctly.  Report and patch by Kenichi Sawada.

2008-03-12 14:00  y-asaba

	* main.c: Improve bind(2) and unlink(2) error message.  Patch
	  contributed by Jun Kuriyama.

2008-03-12 13:53  y-asaba

	* pcp/pcp_recovery_node.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1): Fix typos in pcp_recovery_node.c usage.  Patch
	  contributed by Jun Kuriyama.

2008-03-12 13:51  y-asaba

	* Makefile.in (tags: V2_1_0_BETA2, V2_1_0_BETA1), aclocal.m4 (tags:
	  V2_1_0_BETA2, V2_1_0_BETA1), config.h.in (tags: V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), configure, configure.in,
	  parser/Makefile.in (tags: V2_1_0_BETA2, V2_1_0_BETA1),
	  pcp/Makefile.in (tags: V2_1_0_BETA2, V2_1_0_BETA1): Support
	  set_ps_display on FreeBSD.  Patch contributed by ISHIDA Akio.

2008-03-12 12:54  t-ishii

	* pool_auth.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1): Add detailed error messages when auth phase fail.
	  Current messages:

	  pool_read_message_length: message length (8 ) in slot 1 does not
	  match with slot 0(12)

	  is confusing and does very little help.

2008-03-12 11:01  y-asaba

	* pool_process_query.c: Fixed DEALLOCATE ALL processing.

2008-03-11 12:04  y-asaba

	* ChangeLog: Added entries.

2008-03-11 11:54  y-asaba

	* main.c, doc/pgpool-en.html, doc/pgpool-ja.html:
	  * Add '%M'format to obtain old master node ID into failover_command
	    and failback_command.

	  * When master node was down, killed all children process during
	    executing failover_command.

	  * Fixed SIGSEGV if backend0 was undefined.

2008-03-11 11:49  y-asaba

	* pool_process_query.c: Fixed hang up if a node was executed
	  immediate shutdown.

2008-03-11 00:08  t-ishii

	* pool_auth.c: Fix using uninialized varible in
	  pool_read_message_length()

2008-03-10 13:37  t-ishii

	* pool_process_query.c: [no log message]

2008-03-04 16:58  y-asaba

	* ChangeLog: Add entries.

2008-03-03 12:39  y-asaba

	* pool_process_query.c: Fix hang up after processing "show
	  pool_status".  Per report by ISHIDA Akio.

2008-02-29 13:49  yamaguti

	* ChangeLog: added entry for the change in pg_md5.c

2008-02-29 13:40  yamaguti

	* pg_md5.c:
	  * implement password prompt with option "-p" (patch contributed by
	    Volkan Yazici)

	  * disable ECHO while reading password from stdin

2008-02-26 18:55  y-asaba

	* main.c:
	  - Add comment.
	  - Add -v option, which prints version info.

2008-02-25 20:22  y-asaba

	* recovery.c (tags: V2_1_0_BETA1): Improve error message.

2008-02-25 11:58  y-asaba

	* pool_process_query.c: 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.

2008-02-20 19:12  y-asaba

	* pool_process_query.c: Return TRUE in is_select_query() if a query
	  is "COPY TO STDOUT".  kind mismatching error was caused by pg_dump
	  or pg_dumpall.  Per report by Bruno Lustosa.

2008-02-19 14:54  y-asaba

	* Makefile.in, aclocal.m4, configure, configure.in: Stamp
	  2.1-devel.  We hope to release 2.1 on March.

2008-02-19 14:46  y-asaba

	* pool_process_query.c: Fix HINT clause handling in extended query
	  protocol.  pgpool did not replicate the following query with
	  extended query protocol.

	    /* REPLICATION */ SELECT func();

	  Per report by Sagar Thapa.

2008-02-19 14:18  y-asaba

	* pool_process_query.c: Fix misspell.  Patch contributed by Jun
	  Kuriyama.

2008-02-18 18:58  y-asaba

	* pool_stream.c (tags: V2_1_0_BETA2, V2_1_0_BETA1): Add error
	  checking.

2008-02-15 18:43  y-asaba

	* main.c: Polling signals per 3 secs when health check is disabled.

2008-02-15 18:36  y-asaba

	* main.c: Fix zombie process problem. "switching" flag did not
	  clear when invalid node ID was detached.

2008-02-15 15:19  y-asaba

	* pool_process_query.c: Fix DISCARD statement handling.

2008-02-15 13:04  y-asaba

	* main.c: Fix compiler warning.

2008-02-14 14:48  y-asaba

	* main.c: Add comment.

2008-02-14 14:24  y-asaba

	* ChangeLog: Add ChangeLog items.

2008-02-14 14:09  y-asaba

	* main.c: Fix a failover bug that pgpool did not determine a next
	  master node in raw_mode.

2008-02-14 14:05  y-asaba

	* pool_connection_pool.c (tags: V2_1_0_BETA1): Do not create
	  connection cache to standby nodes in raw_mode.  As a result, we can
	  use pgpool-II + warm standby with raw_mode.

2008-02-12 20:16  y-asaba

	* child.c, pgpool.conf.sample, pool.h (tags: V2_1_0_BETA2,
	  V2_1_0_BETA1), pool_config.c, pool_config.l (tags: V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), pool_process_query.c,
	  pool_stream.c, doc/pgpool-en.html, doc/pgpool-ja.html: Remove
	  "replication_timeout" parameter.

	  This parameter was enabled if replication_strict = false. However
	  replication_strict was already removed.

2008-02-12 16:29  yamaguti

	* pool.h: Fix a bug in raw mode where only 1 of multiple nodes were
	  recognized by pgpool.

2008-02-08 19:57  y-asaba

	* pool_stream.c: Fix wrong timeout handling in pool_read2() and
	  pool_read_string().

2008-02-08 17:10  yamaguti

	* pcp/pcp.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1):
	  Disabled PCP client's timeout.

	  PCP commands still take timeout option, but ignores and set
	  notimeout.

2008-02-08 15:47  y-asaba

	* sql/pgpool-recovery/pgpool-recovery.c (tags: V2_1_0_BETA2,
	  V2_1_0_BETA1): PostgreSQL superuser can *only* execute
	  pgpool_recovery and pgpool_remote_start functions because of
	  security issue.

2008-02-08 15:47  yamaguti

	* main.c, pcp_child.c (tags: V2_1_0_BETA1), recovery.c: Implemented
	  configuration file "reload" function into PCP.

2008-02-08 13:11  yamaguti

	* recovery.c: Use "recovery_timeout" to decide how long pgpool
	  should wait before online-recovery fails.

2008-02-08 13:10  yamaguti

	* pgpool.conf.sample, pool.h, pool_config.c, pool_config.l: added a
	  new configuration parameter "recovery_timeout".

	  pgpool waits so many seconds, specified by recovery_timeout, for:

	  1) all client connections are closed before the 2nd stage
	  2) a remote host to start up in the final stage

	  Note that "recovery_timeout = 0" means NO WAIT; not no timeout.

2008-02-05 19:05  y-asaba

	* pool_auth.c: Fix minor bug introduced by previous commit.

2008-02-05 18:57  y-asaba

	* pool_auth.c: Fix authentication error when master was down.

2008-02-05 11:13  y-asaba

	* pool_process_query.c: Remove unneccesary flushing output buffer.

2008-01-29 11:01  y-asaba

	* doc/pgpool-ja.html: Add description of recovery script.

2008-01-29 10:56  y-asaba

	* ChangeLog, child.c, main.c, pcp_child.c, pool.h, pool_auth.c,
	  pool_config.c, pool_config.l, pool_connection_pool.c,
	  pool_error.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_hba.c (tags: V2_1_0_BETA1),
	  pool_ip.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_ip.h (tags: V2_3_1, V2_2_6,
	  V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_ipc.h (tags: V2_3_1, V2_2_6,
	  V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_params.c (tags: V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pool_path.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_path.h (tags: V2_3_1, V2_2_6,
	  V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_process_query.c,
	  pool_query_cache.c (tags: V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), pool_rewrite_query.c
	  (tags: V2_1_0_BETA2, V2_1_0_BETA1), pool_rewrite_query.h (tags:
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), pool_sema.c
	  (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pool_shmem.c (tags: V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pool_signal.c (tags: V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pool_signal.h (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), pool_stream.c, pool_system.c (tags: V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pool_type.h (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), ps_status.c (tags: V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), recovery.c, strlcpy.c (tags: V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  COPYING (tags: V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), pcp/Makefile.in, pcp/pcp.c, pcp/pcp.h (tags:
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pcp/pcp_attach_node.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/Makefile.in, parser/copyfuncs.c (tags:
	  V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/gram.c (tags:
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pcp/pcp_detach_node.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), pcp/pcp_error.c (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pcp/pcp_node_count.c (tags: V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), pcp/pcp_node_info.c
	  (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  pcp/pcp_proc_count.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), pcp/pcp_proc_info.c (tags: V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pcp/pcp_recovery_node.c,
	  pcp/pcp_stop_pgpool.c (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), pcp/pcp_stream.c (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), pcp/pcp_stream.h (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), pcp/pcp_systemdb_info.c
	  (tags: V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  sql/pgpool-recovery/pgpool-recovery.c, parser/gram.h (tags:
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/gram.y
	  (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/keywords.c (tags:
	  V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/keywords.h (tags:
	  V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/list.c (tags:
	  V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/makefuncs.c (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/makefuncs.h (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/memnodes.h (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/nodes.c (tags: V2_2_6, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/nodes.h (tags: V2_2_6, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/outfuncs.c (tags: V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/parsenodes.h (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/parser.h (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/pg_list.h (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), parser/pool_memory.c (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/pool_memory.h
	  (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/pool_parser.h
	  (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/pool_string.c
	  (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/pool_string.h (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/primnodes.h (tags: V2_2_6, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/scan.c (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/scan.l (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1), parser/scansup.h (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1), parser/value.c (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1), parser/value.h (tags:
	  V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1): Update
	  copyright.

2008-01-28 11:31  y-asaba

	* ChangeLog: Add item.

2008-01-28 11:26  y-asaba

	* pool_process_query.c: Change log level of the following message
	  from ERROR to LOG.

	    ProcessFrontendResponse: failed to read kind from frontend. fronend
	    abnormally exited

	  This means that pgpool detects unexpected EOF. This is not pgpool's
	  error.

2008-01-25 18:49  y-asaba

	* ChangeLog: Add item.

2008-01-25 16:20  y-asaba

	* pool_process_query.c: Load balancing node was changed after
	  processing transaction.  For example,

	    SELECT 1; <-- node 1
	    BEGIN;
	    SELECT 2; <-- node 0(master)
	    END;
	    SELECT 3; <-- node 0(master)

	  "SELECT 3" was sended to a master node, not a load balancing node.

	  VALID_BACKEND macro does not check node validation if
	  in_load_balancing is 1. So we do not use VALID_BACKEND macro to
	  check whether load balancing node is down.

2008-01-19 18:49  y-asaba

	* pool_process_query.c: Add comments.

2008-01-15 11:10  y-asaba

	* pool_process_query.c: Remove unused variable.

2008-01-11 12:11  y-asaba

	* pool_process_query.c: Add comments.

2008-01-11 11:30  y-asaba

	* ChangeLog, main.c, pool_hba.c, pool_process_query.c,
	  parser/parser.c (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1),
	  parser/pool_memory.c, parser/pool_memory.h: Fix memory leak at
	  prepared statement list.

	  pgpool caches a parse tree in prepared statement list. The parse
	  tree copy deeply, but we freed only the top node of the parse tree.

2008-01-09 18:10  y-asaba

	* recovery.c: Refactoring recovery code.

2008-01-08 13:31  y-asaba

	* main.c: Fix compile error.

2008-01-08 11:20  y-mori

	* doc/: tutorial-en.html, tutorial-ja.html (utags: V2_1_0_BETA1):
	  FIX tutorial
	     Because replicate_def table is confused dist_def table when a
	     parallel mode is set according to the tutorial, data is not
	  divided.

2008-01-02 17:32  t-ishii

	* main.c: Fix bug in previous commit Fix typo

2007-12-27 12:00  y-asaba

	* ChangeLog: Add ChangeLog items.

2007-12-27 11:21  y-asaba

	* main.c, pgpool.conf.sample, doc/pgpool-en.html,
	  doc/pgpool-ja.html: Allow '%m' character to obtain master node id
	  in failover_command and failback_command.

2007-12-26 16:05  y-asaba

	* doc/: pgpool-en.html, pgpool-ja.html: Add multi-statement
	  restriction.

2007-12-26 11:40  y-asaba

	* pool_process_query.c: Fix internal transaction handling in
	  extended query protocol.  pgpool did not send "COMMIT" to close an
	  internal transaction block.

2007-12-22 09:11  t-ishii

	* recovery.c: Add lots of pool_log to show the recovery steps

2007-12-11 12:59  t-ishii

	* main.c: Change "starting health checking" and "retrying %d th
	  health checking" log messages to DEBUG messages since they are too
	  verbose.

2007-12-07 15:35  y-asaba

	* TODO (tags: V2_1_0_BETA1): TODO: Add replication function list.

2007-12-07 14:08  y-asaba

	* child.c, config.h.in, configure, configure.in, pcp_child.c,
	  pool_config.c, pool_config.l, pcp/pcp.c: Fix compile error and
	  warning on Solaris 10.

2007-12-06 13:59  y-mori

	* pool_rewrite_query.c: FIX: INSERT statment in a parallel mode
	       How to count the Value Clause list was wrong

2007-12-05 17:19  y-asaba

	* pool_stream.c: Improve buffering algorithm in pool_write().

2007-12-05 17:15  y-asaba

	* pool_stream.c: Improve buffering algorithm in pool_write().

2007-12-03 10:47  y-asaba

	* pool_process_query.c: Don't output log if PostgreSQL send a
	  warning message in do_command().

2007-12-02 11:45  y-asaba

	* pool_process_query.c: Fix segmentation fault if CloseComplete
	  command was received.

2007-12-01 23:50  y-asaba

	* pool_process_query.c: Fix memory leak when PREPARE or DEALLOCATE
	  is failed.

2007-12-01 22:26  y-asaba

	* pool_process_query.c: Remove debug log.

2007-11-30 16:38  y-mori

	* pool_rewrite_query.c: Fix: The INSERT statment did not correspond
	       to the parser of postgresql 8.3 that pgpool-II 2.0 had.
	       Therefore, the following errors occur if INSERT is done in a
	       parallel mode

	       ERROR: pgpool2 sql restriction
	       DETAIL: cannot use SElectStmt in InserStmt

2007-11-29 14:50  y-asaba

	* ChangeLog: update.

2007-11-24 22:04  t-ishii

	* doc/: pgpool-en.html, pgpool-ja.html: Fix english docs.  Add a
	  link to tutorial.

2007-11-23 09:14  t-ishii

	* pool_config.c, pool_config.l: Add missing replicate_select entry.
	  per bug report on [pgsql-jp: 38968].

2007-11-22 04:35  devrim

	* pgpool.spec: Update to 2.0.1

2007-11-21 19:18  y-asaba

	* configure, configure.in (utags: V2_0_1): Prepare for 2.0.1.

2007-11-21 19:09  y-asaba

	* NEWS, doc/pgpool-ja.html (utags: V2_0_1): Release note for
	  pgpool-II 2.0.1.

2007-11-21 18:39  y-asaba

	* ChangeLog (tags: V2_0_1): update.

2007-11-21 18:37  y-asaba

	* pool_process_query.c (tags: V2_0_1): Fix segmentation fault when
	  UPDATE or DELETE is executed.  The bug is critical so we must
	  release 2.0.1 as soon as possible.

2007-11-21 13:47  y-asaba

	* recovery.c (tags: V2_0_1): Use snprintf() instead of sprintf().

2007-11-21 10:47  y-asaba

	* pool_process_query.c: Send a syntax error query to a master node
	  when master_slave is true.

2007-11-21 10:40  y-asaba

	* pool_process_query.c: Send a syntax error query to a master node
	  when master_slave is true.

2007-11-16 14:29  y-mori

	* doc/: pgpool-en.html (tags: V2_0_1), pgpool-ja.html (utags:
	  V2_0_0): ADD: documents (Setting method of Query cache)

2007-11-16 11:52  y-asaba

	* pool_auth.c (tags: V2_0_1, V2_0_0), pool_auth.c: Fix segmentation
	  fault in a password authentication when a node is down.

2007-11-16 10:56  y-asaba

	* ChangeLog (tags: V2_0_0): pgpool-II 2.0

2007-11-16 10:51  y-asaba

	* Makefile.in (tags: V2_0_1), aclocal.m4 (tags: V2_0_1), configure,
	  parser/Makefile.in (tags: V2_0_1), parser/gram.c (tags: V2_0_1),
	  parser/gram.h (tags: V2_0_1), pcp/Makefile.in (tags: V2_0_1)
	  (utags: V2_0_0): Prepare for pgpool-II 2.0.

2007-11-16 10:39  y-asaba

	* doc/: pgpool-en.html, pgpool-ja.html:
	  - Fix the sample script of online recovery.
	  - Add note about timeout of pcp_recovery_node.

2007-11-16 09:20  gleu

	* doc/pgpool-en.html: Typo fix.

2007-11-15 09:39  y-mori

	* pool_rewrite_outfuncs.c (tags: V2_1_0_BETA1),
	  pool_rewrite_query.h (utags: V2_0_0, V2_0_1): FIX: It corresponed
	      to the following Queries.  ex) select * from (select a,b,c from t1)
	                                                     as t2(d,e,f) ~~~~~

2007-11-14 16:46  y-mori

	* pool_process_query.c (tags: V2_0_0): FIX: The load-balnace was
	  not functioning in a parallel mode

2007-11-14 13:59  y-mori

	* pool_rewrite_outfuncs.c: FIX:
	     It made a mistake in the processing of OUTER JOIN (syntax of C
	     lang)

2007-11-14 12:59  y-mori

	* pool.h (tags: V2_0_1, V2_0_0), pool_process_query.c,
	  pool_stream.c (tags: V2_0_1, V2_0_0): fix:
	      -When the setting of replication_timeout was effective,
	       SELECT that the execution time is long did the time-out
	       in only a parallel mode.

	      -A wrong number was displayed when replicated table was
	       updated or deleted in only a parallel mode.

2007-11-13 10:44  y-asaba

	* configure.in (tags: V2_0_0): Prepare for pgpool-II 2.0.

2007-11-13 03:12  devrim

	* doc/pgpool-en.html: Removed some garbage chars Fixed indendation
	  of some paragraphs Fixed some typos

	  There seems a lot to do btw.

2007-11-12 18:04  y-asaba

	* NEWS (tags: V2_0_0), doc/pgpool-ja.html: Prepare for pgpool-II
	  2.0.

2007-11-12 18:02  y-asaba

	* doc/pgpool-ja.html: Fix typo.

2007-11-12 17:34  y-mori

	* doc/tutorial-en.html (tags: V2_0_1, V2_0_0): add: pgpoo-II 2.0
	       tutorial -parallel-query section

2007-11-12 15:40  y-mori

	* doc/: pgpool-en.html, pgpool-ja.html: add:
	  	pgpool-II 2.0 manual.
	    -add parallel-query section

	  fix:
	  	Japanese manual.
	    - typo

2007-11-09 16:25  y-mori

	* doc/: pgpool-ja.html, pgpool.css (tags: V2_0_1, V2_0_0),
	  tutorial-ja.html (tags: V2_0_1, V2_0_0): pgpoo-ll 2.0 manual &
	  	tutorial (Japanese)
	  - Add parallel query section

2007-11-09 15:09  y-mori

	* sample/replicate_def_pgbench.sql (tags: V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0): ADD Sample SQL file

2007-11-09 13:56  y-mori

	* sql/system_db.sql (tags: V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1,
	  V2_0_0): ADD "replicate_def" table in "pgpool_catalog" schema

2007-11-09 13:41  y-asaba

	* pgpool.8.in (tags: V2_1_0_BETA1, V2_0_1, V2_0_0): Add reload
	  option.

2007-11-09 13:37  y-asaba

	* main.c (tags: V2_0_1, V2_0_0): Add pgpool reload in usage().

2007-11-09 12:00  y-asaba

	* Makefile.am, test/jdbc/README.euc_jp (tags: V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1) (utags: V2_0_0, V2_0_1, V2_1_0_BETA1, V2_1_0_BETA2):
	  Add README.euc_jp

2007-11-08 10:43  y-asaba

	* doc/pgpool-en.html: pgpool-II 2.0 manual.
	    - Add online recovery section.
	    - Add new parameters.

	  TODO: review my English...

2007-11-07 19:05  y-asaba

	* pool_process_query.c: Send Sync message before calling
	  insert_lock().

2007-11-07 15:35  y-mori

	* pool_rewrite_outfuncs.c: fix: join rule for /*NOT*/SQL99 type
	  join,CROSS JOIN and NATURAL JOIN

2007-11-06 16:22  y-asaba

	* pool_process_query.c: Fix insert lock with JDBC and the following
	  scenario.

	    BEGIN;
	    INSERT INTO a ...  <- get table lock.
	    INSERT INTO b ...  <- don't get table lock.

2007-11-06 16:07  y-asaba

	* test/jdbc/InsertTest.java (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), test/jdbc/RunTest.java (tags:
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  test/jdbc/pgpool.properties (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), test/jdbc/prepare.sql (tags:
	  V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  test/jdbc/expected/insert (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), Makefile.am: Add INSERT statement
	  test.

2007-11-06 13:38  y-asaba

	* pool_process_query.c: Don't close internal transaction when
	  pgpool recieves Sync message.

2007-11-05 16:26  y-asaba

	* pool_process_query.c: Send Sync message before calling
	  insert_lock().

2007-11-05 14:49  y-asaba

	* pool_process_query.c: Fix insert_lock with extended query
	  protocol.

2007-11-05 14:26  y-asaba

	* pool_process_query.c: Fix insert_lock with extended query
	  protocol.

2007-11-05 13:24  y-mori

	* pool_process_query.c: FIX: read wrong file descriptor in
	  pool_parallel_exec()

2007-11-05 11:08  y-asaba

	* pool_process_query.c: Use FD_SETSIZE instead of 1024 at set_fd,
	  isset_fd and zero_fd.

2007-11-05 10:41  y-asaba

	* pool_process_query.c: Ignore white space in need_insert_lock().

2007-11-05 10:35  y-asaba

	* pool_process_query.c: Ignore white space in need_insert_lock().

2007-11-02 18:20  y-mori

	* pool_process_query.c: Fix: compile error at FreeBSD4.1

2007-11-02 01:57  devrim

	* pgpool.spec (tags: V2_0_1, V2_0_0): Update spec file for 2.0
	  beta1

2007-11-01 19:14  y-asaba

	* Makefile.am: Fix compile error with SUN's cc.

2007-11-01 19:11  y-asaba

	* configure.in, pool_process_query.c, parser/Makefile.am (tags:
	  V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  pcp/Makefile.am (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0): Fix compile error with SUN's cc.

2007-11-01 17:17  y-asaba

	* pcp/pcp_proc_count.c (tags: V2_0_1, V2_0_0): Fix warning with
	  SUN's cc.

2007-11-01 11:08  t-ishii

	* Makefile.in (tags: V2_0_0_BETA1): Rerun autoconf

2007-11-01 11:01  y-asaba

	* Makefile.am (tags: V2_0_0_BETA1): Remove test.diff

2007-11-01 10:45  t-ishii

	* Makefile.in, aclocal.m4 (tags: V2_0_0_BETA1), configure (tags:
	  V2_0_0_BETA1), pool_config.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), parser/Makefile.in (tags: V2_0_0_BETA1),
	  pcp/Makefile.in (tags: V2_0_0_BETA1): Run autoconf

2007-10-31 19:45  y-asaba

	* NEWS, pgpool.conf.sample (tags: V2_0_1, V2_0_0), pool.h,
	  pool_config.l (tags: V2_0_1, V2_0_0), pool_process_query.c,
	  doc/pgpool-en.html, doc/pgpool-ja.html (utags: V2_0_0_BETA1):
	  Remove replicate_strict derective. pgpool-II 2.x always set to true.

2007-10-31 19:13  y-asaba

	* ChangeLog (tags: V2_0_0_BETA1): pgpool-II 2.0 beta1

2007-10-31 18:41  y-mori

	* test/pdo-test/README.euc_jp (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1): ADD: pdo test
	  program manual(Japanese)

2007-10-31 15:10  y-asaba

	* doc/pgpool-ja.html: Add comments about reloadable derectives.

2007-10-31 13:15  y-asaba

	* pool_config.l: Allow to reload pcp_timeout.

2007-10-31 12:49  y-mori

	* pool_rewrite_outfuncs.c (tags: V2_0_0_BETA1): FIX: "IN" predicate
	  at query rewriting

2007-10-31 12:31  y-asaba

	* NEWS: pgpool-II 2.0(beta1) release note.

2007-10-30 21:44  t-ishii

	* pool_auth.c (tags: V2_0_0_BETA1): Fix confusing variable name
	  Enhance error message Check unsupported auth method

2007-10-30 16:13  y-asaba

	* pool_process_query.c: Fix segfault with "SHOW pool_status".

2007-10-30 16:09  y-asaba

	* Makefile.am: Remove gprof option.

2007-10-30 15:58  y-asaba

	* doc/: pgpool-ja.html, pgpool.css (tags: V2_0_0_BETA1): Improve
	  online-recovery documentation.

2007-10-30 11:35  y-asaba

	* configure.in (tags: V2_0_0_BETA1): Prepare for pgpool-II 2.0
	  beta1.

2007-10-30 11:11  y-asaba

	* pool_auth.c: Previous commit did not support V2 protocol.

2007-10-30 10:53  y-asaba

	* pool_auth.c: Send the following error message to frontend if
	  client auth method is md5 password in replication, master-slave and
	  parallel modes.

	    MD5 authentication is unsupported in replication, master-slave and
	    parallel modes.

2007-10-29 17:12  y-asaba

	* Makefile.am: Merge V1_STABLE branch.

2007-10-29 15:55  y-asaba

	* pgpool.spec (tags: V2_0_0_BETA1): Merge V1_STABLE branch.

2007-10-29 15:28  y-asaba

	* redhat/: pgpool.init, pgpool.sysconfig (tags: V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1) (utags: V2_0_0,
	  V2_0_0_BETA1, V2_0_1, V2_1_0_BETA1, V2_1_0_BETA2): Merge redhat
	  scripts from V1_STABLE branch.

2007-10-29 15:09  y-asaba

	* doc/pgpool-ja.html: Fix insert_lock description.

2007-10-29 14:52  y-asaba

	* doc/pgpool-ja.html: Add new directives and update description of
	  online recovery.

2007-10-29 14:50  y-asaba

	* pgpool.conf.sample, pool.h, pool_config.l, pool_process_query.c,
	  recovery.c (tags: V2_0_0, V2_0_0_BETA1): Add new directives
	  "recovery_1st_stage_command" and "recovery_2nd_stage_command".

	  pgpool don't block client connections and data update operations
	  while executing recovery_1st_stage_command. In
	  recovery_2nd_stage_command, pgpool block them.

	  If you recover by PITR, the first stage command get a base backup.
	  Then you switch XLOG in the second stage command.

2007-10-29 13:37  y-asaba

	* sql/pgpool-recovery/: pgpool-recovery.c, pgpool-recovery.sql.in
	  (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1)
	  (utags: V2_0_0, V2_0_0_BETA1, V2_0_1): Change pgpool_recovery
	  signature from pgpol_recovery(text, text) to pgpool_recovery(text,
	  text, text). The first argument is script name.

	  * pgpool_recovery arguments:
	    #1: script name
	    #2: remote host name
	    #3: remote database cluster path

	  return value:
	    command status (= "$?" value)

2007-10-29 13:16  y-mori

	* pool_process_query.c, pool_rewrite_outfuncs.c,
	  pool_rewrite_query.h (tags: V2_0_0_BETA1), parser/outfuncs.c
	  (tags: V2_0_1, V2_0_0, V2_0_0_BETA1): add optimization of
	  aggregate function and group by clause in parallel mode

2007-10-29 10:20  t-ishii

	* Makefile.in, pgpool.conf.sample, pool.h, pool_config.c,
	  pool_config.l, pool_process_query.c, parser/gram.c (tags:
	  V2_0_0_BETA1), parser/scan.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1): Change child_idle_limit to client_idle_limit

2007-10-26 20:28  y-asaba

	* pool_process_query.c: All signals are blocked while sending a
	  "COMMIT" command.

2007-10-26 16:41  y-asaba

	* pool_process_query.c: Check return value of pool_flush().

2007-10-26 16:27  y-asaba

	* pool_process_query.c: Check return value of pool_flush().

2007-10-23 16:32  y-asaba

	* sql/pgpool-recovery/pgpool-recovery.c: Change error message.

2007-10-23 13:44  y-asaba

	* Makefile.am, doc/pgpool-ja.html, sample/pgpool_recovery_pitr
	  (tags: V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1): Add
	  online recovery script using pitr.

2007-10-22 17:59  y-asaba

	* test/jdbc/.cvsignore (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1): Add .cvsignore file.

2007-10-22 17:55  y-asaba

	* Makefile.am: Add test/jdbc/* into tar ball.

2007-10-22 17:47  y-asaba

	* test/jdbc/: AutoCommitTest.java (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0), BatchTest.java
	  (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0), ColumnTest.java (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0), LockTest.java (tags:
	  V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  PgpoolTest.java (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), RunTest.java, SelectTest.java
	  (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2,
	  V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0), UpdateTest.java (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0), pgpool.properties,
	  prepare.sql, run.sh (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), expected/autocommit (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  expected/batch (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), expected/column (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  expected/lock (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0), expected/select (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0),
	  expected/update (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0) (utags: V2_0_0_BETA1): Add test
	  program using Java+JDBC driver.

2007-10-22 13:23  y-asaba

	* NEWS, doc/pgpool-ja.html: Merge from V1_STABLE branch.

2007-10-22 13:20  y-asaba

	* ChangeLog, NEWS, doc/pgpool-ja.html (utags: V1_3): Add a item
	  about fixing query cache.

2007-10-18 21:41  t-ishii

	* Makefile.in, configure, parser/scan.c (utags: V1_3): Run autoconf

2007-10-18 18:55  y-asaba

	* pool_query_cache.c (tags: V1_3), pool_query_cache.c (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1): Although the second argument of
	  PQunescapeBytea() requires size_t which size is 8 byte in 64bit
	  machine, pgpool passed 4 byte variable.  It caused segfault. So
	  fixed passing size_t variable.

2007-10-18 18:52  y-mori

	* test/pdo-test/: collections.inc, def.inc, log.txt, pdotest.php,
	  regsql.inc, SQLlist/test1.sql, SQLlist/test2.sql,
	  mod/database.inc, mod/def.inc, mod/errorhandler.inc (utags:
	  V2_0_0, V2_0_0_BETA1, V2_0_1, V2_1_0, V2_1_0_BETA1, V2_1_0_BETA2,
	  V2_1_0_RC1, V2_2_0, V2_2_0_BETA1, V2_2_0_BETA2, V2_2_0_RC1,
	  V2_2_0_RC2, V2_2_1, V2_2_2, V2_2_3, V2_2_4, V2_2_5, V2_2_6, V2_3,
	  V2_3_1): ADD: extend protocol test tool

2007-10-18 17:24  y-asaba

	* sample/pgpool_recovery (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1): execute rsync as
	  background jobs.

2007-10-18 13:48  y-asaba

	* sample/pgpool_recovery:
	  * Add --update option.
	  * Sync pg_twophase directory.

2007-10-18 11:54  y-asaba

	* pool_process_query.c: Fix compile warning on Solaris.

2007-10-18 11:49  y-asaba

	* pool_process_query.c (tags: V1_3): Fix compiler warning on
	  Solaris.

2007-10-18 10:21  y-asaba

	* pool_config.c, pool_config.l: Set failback_command default value
	  to empty string;

2007-10-17 19:23  y-asaba

	* main.c (tags: V2_0_0_BETA1): Fix segfault when failover_command
	  is empty.

2007-10-17 15:31  y-mori

	* pool_rewrite_outfuncs.c: FIX: lost alias name of column in query
	  rewriting when it was used at GRUP BY CLAUSE..etc

2007-10-17 13:13  devrim

	* pool_config.l (tags: V1_3): Fix typos in comments

2007-10-17 13:03  devrim

	* pgpool.spec (tags: V1_3):
	  - Update to 1.3

2007-10-17 12:00  y-mori

	* pool.h, pool_process_query.c, pool_rewrite_outfuncs.c: Fix:
	  compiler's warning

2007-10-17 11:50  y-asaba

	* NEWS: Release note for 1.3.

2007-10-17 11:26  y-asaba

	* Makefile.am (tags: V1_3): Add redhat/* into EXTRA_DIST.

2007-10-16 22:46  devrim

	* pgpool.spec: Sync with Fedora spec file Add init script and
	  sysconfig file

2007-10-16 22:44  devrim

	* redhat/: pgpool.init, pgpool.sysconfig (utags: V1_3): RPM init
	  script and sysconfig file for Fedora / Red Hat

2007-10-16 18:18  y-asaba

	* doc/pgpool-ja.html: Prepare for 1.3

2007-10-16 18:08  y-asaba

	* version.h (tags: V1_3): Prepare for 1.3

2007-10-16 17:18  y-asaba

	* configure.in (tags: V1_3): Prepare for 1.3.

2007-10-16 16:48  y-asaba

	* ChangeLog: update.

2007-10-16 12:44  y-asaba

	* pool_process_query.c: Fix hang up in load balancing mode.

2007-10-16 11:57  y-asaba

	* pool_process_query.c: Fix hang up in load balancing mode.

	    BEGIN;
	    SELECT 1;
	    COMMIT;
	    SELECT 1;  <-- hang up

	  The bug was introduced in V1.2.  Reported by Felix J. Ogris.

2007-10-15 22:56  y-mori

	* pool_rewrite_outfuncs.c: fix Type Casting of Constant value was
	  not supported

2007-10-15 21:56  y-mori

	* pool_process_query.c: FIX wrong file descriptor was used at
	  pool_prallel_exec

2007-10-15 19:38  y-mori

	* pool_process_query.c, pool_rewrite_query.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1): FIX insert rule in parallel mode

2007-10-15 19:20  y-asaba

	* test/parser/: expected/create.out (tags: V2_2_6),
	  expected/select.out, input/select.sql (utags: V2_0_0,
	  V2_0_0_BETA1, V2_0_1, V2_1_0, V2_1_0_BETA1, V2_1_0_BETA2,
	  V2_1_0_RC1, V2_2_0, V2_2_0_BETA1, V2_2_0_BETA2, V2_2_0_RC1,
	  V2_2_0_RC2, V2_2_1, V2_2_2, V2_2_3, V2_2_4, V2_2_5): Add test
	  cases.

2007-10-15 19:18  y-asaba

	* parser/outfuncs.c: Support interval operator.

2007-10-15 18:51  y-asaba

	* parser/: gram.y, scan.l (utags: V2_0_0, V2_0_0_BETA1, V2_0_1):
	  Fix core dump with the following SQL.
	    SELECT * FROM tbl LIMIT 1,0;

2007-10-15 16:05  y-asaba

	* pool_process_query.c: Fix invalid memory access when pgpool
	  processed DEALLOCATE statement.

2007-10-15 15:56  y-mori

	* pool_config.c, pool_process_query.c, pool_rewrite_outfuncs.c,
	  pool_rewrite_query.c, pool_rewrite_query.h, pool_system.c (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1), pool_type.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1): ADD query rewriting to main trunc

2007-10-15 15:51  y-asaba

	* pool_process_query.c: Fix typo.

2007-10-15 15:38  y-asaba

	* pool_process_query.c, ChangeLog: Fix invalid memory access when
	  pgpool processed DEALLOCATE statement.

2007-10-15 15:11  y-asaba

	* parser/pool_memory.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1): Fix
	  core dump with a large SQL.

2007-10-15 14:45  y-asaba

	* pool_process_query.c: reset queries are replicated in
	  master/slave mode.

2007-10-12 23:14  y-mori

	* pool_process_query.c, pool_rewrite_outfuncs.c,
	  pool_rewrite_query.c: ADD query rewriting

2007-10-12 21:27  t-ishii

	* pgpool.conf.sample, pool.h, pool_config.c, pool_process_query.c,
	  parser/scan.c: Add pool_status entry for child_idle_limit Fix
	  comments

2007-10-12 18:15  y-asaba

	* pgpool.conf.sample (tags: V1_3), pgpool.conf.sample: Add new
	  directive "authentication_timeout" into pgpool.conf.sample.

2007-10-12 15:56  y-asaba

	* doc/: pgpool-ja.html: Add authentication_timeout.

2007-10-12 14:55  y-asaba

	* main.c: Fix compiler warning.

2007-10-12 14:30  y-asaba

	* parser/: parser.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1),
	  pool_parser.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1), scan.l: Fix
	  scanner's error handling. If there was a unterminated double-quote
	  identifier, scanner entered infinite-loop.

2007-10-12 14:20  y-asaba

	* ChangeLog, parser/parser.c (tags: V1_3), parser/pool_parser.h
	  (tags: V1_3), parser/scan.l (tags: V1_3): Fix scanner's error
	  handling. If there was a unterminated double-quote identifier,
	  scanner entered infinite-loop.

2007-10-12 13:51  y-asaba

	* child.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1), pool.h,
	  pool_config.c, pool_config.l, pool_process_query.c: Add new
	  directive "authentication_timeout". The directive means the maximum
	  time in seconds to complete client authentication. The default value
	  is 60.

2007-10-12 13:50  y-asaba

	* TODO (tags: V2_0_1, V2_0_0, V2_0_0_BETA1): Remove some items.

2007-10-12 13:39  y-asaba

	* test/parser/input/select.sql: Add test cases.

2007-10-12 13:38  y-asaba

	* parser/outfuncs.c: Support for XmlExprt object.

2007-10-12 13:35  y-asaba

	* pcp_child.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1): recovery
	  request can be accepted only in replication mode.

2007-10-12 13:34  t-ishii

	* Makefile.am, Makefile.in, pgpool.conf.sample, pool.h,
	  pool_config.c, pool_config.l, pool_process_query.c,
	  parser/Makefile.am (tags: V2_0_0_BETA1), parser/Makefile.in,
	  parser/gram.c, parser/gram.h (tags: V2_0_0_BETA1): Add
	  child_idle_limit.  # If child_idle_limit is n (n > 0), the child is
	  forced to be # disconnected after n seconds idle between
	  transactions.  # 0 means no disconnect.

	  Need to work on show pool_status and docs.

2007-10-12 13:32  y-asaba

	* child.c (tags: V1_3), ChangeLog, pool.h (tags: V1_3),
	  pool_config.c (tags: V1_3), pool_config.l, pool_process_query.c:
	  Add new directive "authentication_timeout". The directive means the
	  maximum time in seconds to complete client authentication. The
	  default value is 60.

2007-10-11 17:32  y-asaba

	* ChangeLog, child.c, pool.h: Check startup packet length. If the
	  length is greater than 10,000 byte, pgpool reject the connection.

2007-10-11 10:49  y-asaba

	* TODO: Add graceful {shutodwn, attach, detach} into TODO list.

	  * TODO for TODO list translate Japanse into English.

2007-10-04 13:17  y-asaba

	* doc/: pgpool-ja.html, pgpool.css: Update Japanse manual.
	    - Add release note for pgpool-II 2.0
	    - Add failover_command and failback_command description

2007-10-04 12:00  y-asaba

	* doc/pgpool-en.html: Merge V1_STABLE branch.

2007-10-04 11:36  y-asaba

	* version.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1): Change
	  PGPOOLVERSION to "hikitsuboshi".

2007-10-03 15:19  y-asaba

	* TODO: Remove TODO items.

2007-10-03 14:21  y-asaba

	* pool_process_query.c: Reset a prepared statement list when
	  DISCARD ALL or DISCARD PLANS statement is completed.

2007-10-03 13:52  y-asaba

	* test/parser/: README, run-test (utags: V2_0_0, V2_0_0_BETA1,
	  V2_0_1, V2_1_0, V2_1_0_BETA1, V2_1_0_BETA2, V2_1_0_RC1, V2_2_0,
	  V2_2_0_BETA1, V2_2_0_BETA2, V2_2_0_RC1, V2_2_0_RC2, V2_2_1,
	  V2_2_2, V2_2_3, V2_2_4, V2_2_5, V2_2_6, V2_3, V2_3_1): Translate
	  from Japanese into English.

2007-10-03 13:47  y-asaba

	* Makefile.am, Makefile.in, test/parser/.cvsignore (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/Makefile (tags: V2_2_6, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1), test/parser/README,
	  test/parser/main.c (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/parse_schedule (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1), test/parser/pool.h (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/run-test,
	  test/parser/expected/copy.out (tags: V2_2_6, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/create.out, test/parser/expected/cursor.out
	  (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/expected/delete.out (tags: V2_2_6,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/drop.out (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/insert.out (tags: V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1), test/parser/expected/misc.out
	  (tags: V2_2_6, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/expected/prepare.out (tags: V2_2_6,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/privileges.out (tags: V2_2_6, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/select.out,
	  test/parser/expected/transaction.out (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/update.out (tags: V2_2_6, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/expected/var.out (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/alter.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/copy.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/create.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/cursor.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/delete.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/drop.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/insert.sql (tags: V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1), test/parser/input/misc.sql (tags:
	  V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/input/prepare.sql (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/input/privileges.sql (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), test/parser/input/select.sql,
	  test/parser/input/transaction.sql (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/update.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  test/parser/input/var.sql (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1): Add SQL parser test.

2007-10-03 13:25  y-asaba

	* Makefile.in, aclocal.m4, config.sub (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1),
	  configure, ltmain.sh (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1), pool_hba.c (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1), pool_process_query.c,
	  pool_rewrite_outfuncs.c, pool_rewrite_query.c,
	  parser/Makefile.in, parser/copyfuncs.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), parser/gram.c, parser/gram.h, parser/gram.y,
	  parser/gramparse.h (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1), parser/keywords.c
	  (tags: V2_0_1, V2_0_0, V2_0_0_BETA1), parser/keywords.h (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1), parser/list.c (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1), parser/makefuncs.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), parser/makefuncs.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), parser/nodes.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), parser/outfuncs.c, parser/parsenodes.h (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1), parser/parser.c, parser/parser.h
	  (tags: V2_0_1, V2_0_0, V2_0_0_BETA1), parser/pg_list.h (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1), parser/pool_parser.h,
	  parser/primnodes.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1),
	  parser/scan.c, parser/scan.l, parser/value.c (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1), parser/value.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), pcp/Makefile.in: Import PostgreSQL 8.3 SQL parser.
	  The revision of gram.y is 2.603.

2007-10-03 13:17  y-asaba

	* pgpool.conf.sample, pool_config.c, pool_config.l: The default
	  value of ignore_leading_white_space is true in pgpool-II 2.x.

2007-09-28 10:39  y-asaba

	* NEWS, doc/pgpool-ja.html (utags: V1_2_1): SET, PREPARE and
	  DEALLOCATE statements are replicated in master/slave mode.

2007-09-27 18:38  gleu

	* pool_process_query.c: Typo fix.

2007-09-27 11:48  y-asaba

	* TODO: Remove TODO item.

2007-09-27 11:46  y-asaba

	* pool_process_query.c: Call read_kind_from_backend() function
	  instead of pool_read_kind() in Execute(), Parse() and
	  SimpleForwardToFrontend().

2007-09-26 18:09  y-asaba

	* pool_process_query.c: Remove debug message.

2007-09-26 17:56  y-asaba

	* pool_process_query.c: SET, PREPARE and DEALLOCATE statements are
	  replicated in master/slave mode.

2007-09-26 14:29  y-asaba

	* main.c, pool.h, pool_process_query.c, pool_stream.c (tags:
	  V2_0_0_BETA1): pgpool-II could not detach multiple node when
	  message kinds were mismatched.

	  For example:
	    node-1(master): success
	    node-2: fail
	    node-3: success
	    node-4: fail
	    node-5: success

	  node-2 was only detached.

	  Now it determine detached nodes by "majority voting rule".  And it
	  can detach them at the same time.

	  For example:
	    node-1(master): success
	    node-2: fail
	    node-3: success
	    node-4: fail
	    node-5: success

	  node-2 and node-4 are detached because they are minority.

	    node-1(master): success
	    node-2: fail
	    node-3: fail
	    node-4: success

	  The number of the group which gain "success" is same as the number
	  of the group which gain "fail". In this case, node-2 and node-3 are
	  detached because these don't belong to the group which master
	  belongs to.

2007-09-26 14:01  y-asaba

	* NEWS, doc/pgpool-ja.html: Add item into V1.2.1 release note.

2007-09-26 13:23  y-asaba

	* ChangeLog, pool_process_query.c (utags: V1_2_1): SET statements
	  are replicated in master/slave mode.

2007-09-26 12:32  y-asaba

	* pool_sema.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1): Fix
	  initializing semaphore values.

2007-09-16 11:08  y-asaba

	* pgpool.conf.sample: Add comments abount failover_command and
	  failback_command.

2007-09-14 22:36  y-asaba

	* main.c, pgpool.conf.sample, pool.h, pool_config.c, pool_config.l,
	  pool_process_query.c, parser/gram.c, parser/gram.h,
	  parser/gram.y, parser/pool_string.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), parser/pool_string.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1): Add "failover_command" and "failback_command"
	  directives.  If failover or failback occur, pgpool execute setting
	  command by system(3).  These directives evaluate special characters
	  with the following rule.

	    %d: node id
	    %h: backend's hostname
	    %p: backend's port number
	    %D: backend's data directory

	  example) pgpool.conf: ---
	    failover_command = 'echo %h %p %D %d > /tmp/failover'
	    failback_command = 'echo %h %p %D %d > /tmp/failback'

	    backend_hostname1 = 'localhost'
	    backend_port1 = 5433
	    backend_weight1 = 1
	    backend_data_directory1 = '/home/postgres/pgdata/data5433' ---

	  When node 1 is down, pgpool execute the following failover command.

	    failover localhost 5433 /home/postgres/pgdata/data5433 1

	  /tmp/failover is created.

	    % cat /tmp/failover
	    failover localhost 5433 /home/postgres/pgdata/data5433 1

2007-09-14 20:11  y-asaba

	* child.c, pool.h, pool_process_query.c: Fix hang up when load
	  balancing node was down.

2007-09-14 20:06  y-asaba

	* ChangeLog, child.c (tags: V1_2_1), pool.h (tags: V1_2_1),
	  pool_process_query.c: Fix hang up when load balancing node was
	  down.

2007-09-12 13:43  y-asaba

	* NEWS: 1.2.1 release note.

2007-09-12 13:31  y-asaba

	* doc/pgpool-ja.html: 1.2.1 release note in Japanese.

2007-09-12 13:21  t-ishii

	* configure (tags: V1_2_1): Run autoconf

2007-09-12 12:55  y-asaba

	* configure.in (tags: V1_2_1): Prepare for 1.2.1

2007-09-10 22:34  t-ishii

	* child.c: Fix misspell in a comment

2007-09-10 22:29  t-ishii

	* pool_process_query.c: Modfify pool_send_error_message() so that
	  it won't be blocked by sending packet to the closing frontend
	  connection.  Also rename set_non_block() and unset_non_block() to
	  pool_sen_non_block() and pool_unset_non_block() respectively to make
	  them public functions.

2007-09-10 22:25  t-ishii

	* child.c, pool.h: Modfify pool_send_error_message() so that it
	  won't be blocked by sending packet to the closing frontend
	  connection.  Also rename set_non_block() and unset_non_block() to
	  pool_sen_non_block() and pool_unset_non_block() respectively to make
	  them public functions.

2007-09-10 21:47  t-ishii

	* child.c: Fix misspell in a comment

2007-09-07 18:08  y-asaba

	* pool_process_query.c, parser/parser.c, parser/pool_memory.c,
	  parser/pool_memory.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1):
	  Improve performance.
	    - Reuse parser memory space in free_parser().
	    - Check node type before comparing with "show pool_status()".

2007-09-06 10:47  y-asaba

	* doc/pgpool-en.html (tags: V1_3, V1_2_1): Fix restricted query
	  section.

2007-09-06 10:43  y-asaba

	* doc/pgpool-en.html: Fix restricted query section.

2007-08-29 19:03  y-mori

	* pool.h, pool_process_query.c, pool_rewrite_outfuncs.c,
	  pool_rewrite_query.c, pool_rewrite_query.h: implemented QUERY
	  ANALYZING (now in progress)

2007-08-29 15:49  y-asaba

	* pool_query_cache.c, pcp/pcp.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), pcp/pcp_stream.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1): Fix compile error on FreeBSD 4.11.

2007-08-29 15:48  y-asaba

	* recovery.c: Fix compile error.

2007-08-29 15:40  y-asaba

	* pool_query_cache.c, pcp/pcp.c (tags: V1_3), pcp/pcp_stream.c
	  (tags: V1_3) (utags: V1_2_1): Fix compile error on FreeBSD 4.11.

2007-08-29 15:01  y-asaba

	* pool_process_query.c: Read response messages in Parse() until
	  receiving ParseComplete or ErrorResponse message.

2007-08-29 14:53  y-asaba

	* pool_process_query.c: Read response messages in Parse() until
	  receiving ParseComplete or ErrorResponse message.

2007-08-29 11:16  y-asaba

	* ChangeLog, pool_process_query.c:
	  * 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.

	  * Fix memory leak in reset_prepared_list()

2007-08-28 19:07  y-asaba

	* pool_process_query.c: Add checking deadlock error message in
	  Parse().

2007-08-28 11:28  y-asaba

	* pool_process_query.c:
	  * 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.

	  * Fix memory leak in reset_prepared_list()

2007-08-17 10:51  t-ishii

	* doc/pgpool-ja.html: Enhance documentation

2007-08-17 10:50  t-ishii

	* TODO, doc/pgpool-ja.html: Enhance documentation.

2007-08-13 11:23  y-asaba

	* pgpool.conf.sample, pool.h, pool_config.l, pool_process_query.c:
	  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 V1.0.

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

2007-08-13 06:37  t-ishii

	* pgpool.conf.sample (tags: V1_2_1): Fix typo in a comment

2007-08-06 10:42  y-asaba

	* pool_process_query.c: Fix memory leak.

2007-08-01 13:27  y-asaba

	* child.c: Remove compiler warning.

2007-08-01 13:26  y-asaba

	* child.c (tags: V1_2): Remove compiler warning

2007-08-01 13:06  y-asaba

	* NEWS (tags: V1_2): Review release note.

2007-08-01 13:03  y-asaba

	* pool_process_query.c (tags: V1_2): Fix SEGV when connection_cache
	  is true and replication_mode is false.

2007-07-31 13:02  y-asaba

	* doc/pgpool-en.html (tags: V1_2): Add a description about
	  "replicate_select" directive.

2007-07-27 21:09  y-mori

	* pool_process_query.c, pool_rewrite_outfuncs.c,
	  pool_rewrite_query.c, pool_rewrite_query.h, pool_system.c: add
	  query analyzing process before rewriting query

2007-07-27 14:57  y-asaba

	* NEWS: Release note for 1.2

2007-07-27 11:45  y-asaba

	* doc/pgpool-ja.html (tags: V1_2): Update release note for v1.2

2007-07-27 10:19  y-asaba

	* doc/pgpool-ja.html: Merge from V1_STABLE branch

2007-07-26 19:24  y-asaba

	* ChangeLog (tags: V1_2): update.

2007-07-26 19:15  y-asaba

	* child.c, pool.h, pool_connection_pool.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1): 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.

2007-07-26 19:12  y-asaba

	* pool_connection_pool.c (tags: V1_3, V1_2_1, V1_2): Fix buffer
	  over run when connection_life_time is expired.

2007-07-26 18:03  y-asaba

	* child.c, pool.h (tags: V1_2), pool_connection_pool.c: 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.

2007-07-26 17:07  t-ishii

	* configure, pool_config.c (tags: V1_2_1) (utags: V1_2): Run
	  autoconf

2007-07-26 16:53  y-asaba

	* doc/pgpool-ja.html: Add release note for 1.2 and description of
	  replicate_select parameter.

2007-07-26 16:46  y-asaba

	* version.h (tags: V1_2_1, V1_2): Prepare for 1.2

2007-07-26 16:30  y-asaba

	* pool_process_query.c: Add replicate_select value to the result of
	  "SHOW pool_status" command.

2007-07-26 14:15  y-asaba

	* pool_connection_pool.c: Fix memory leak when connection slot is
	  full.

2007-07-26 14:12  y-asaba

	* ChangeLog: update.

2007-07-26 14:11  y-asaba

	* pool_connection_pool.c: Fix memory leak when connection slot is
	  full.

2007-07-26 11:28  t-ishii

	* aclocal.m4, configure, pool_config.c: Run autoconf

2007-07-26 11:21  y-asaba

	* pool_config.l: Fix using uninitialized value.

2007-07-25 21:31  y-asaba

	* pool_process_query.c: 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.

2007-07-25 21:24  y-asaba

	* pool_process_query.c: Fix memory leak.

2007-07-25 20:39  y-asaba

	* pool_process_query.c: Fix SEGV when pgpool received a Parse
	  message without a statement name.

2007-07-24 18:02  y-asaba

	* pool.h, pool_process_query.c: Detect deadlock in do_command().
	  When insert_lock was true, kind mismatch error occured.

2007-07-24 17:41  y-asaba

	* ChangeLog, pool.h, pool_process_query.c: Detect deadlock in
	  do_command().  When insert_lock was true, kind mismatch error
	  occured.

2007-07-24 10:57  y-asaba

	* child.c, pool_process_query.c, pool_type.h (tags: V1_3, V1_2_1,
	  V1_2): Load balancing node was chosen before sending "SELECT"
	  statement.  But this way had the following problems.

	    psql>\d accounts
	    Did not find any relation with OID XXX

	  pgpool chooses it after receiving AuthenticationOK('R') message. So
	  pgpool load balance to the same node inside a same session.

	  This fix isn't backported to pgpool.

2007-07-24 10:39  y-asaba

	* pool_config.l (tags: V1_2_1, V1_2): Fixed compile error.

2007-07-23 15:54  y-asaba

	* ChangeLog, pgpool.conf.sample (tags: V1_2), pool.h,
	  pool_config.l, pool_process_query.c: 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 V1.0.

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

2007-07-23 15:30  y-asaba

	* configure.in (tags: V1_2): Prepare for 1.2

2007-07-23 14:32  y-asaba

	* pool_process_query.c: Fixed that start_internal_transaction() was
	  only called under replication mode or parallel mode.

2007-07-23 14:24  y-asaba

	* main.c: Remove debug code.

2007-07-23 13:37  y-asaba

	* child.c, main.c, pool.h, pool_config.c, pool_config.l,
	  pool_process_query.c, pool_type.h: Add reloading config files.
	  pgpool can reload pgpool.conf, pool_hba.conf and distributed rules
	  from system DB. If reload, you type the following command.

	    % pgpool reload

	  Or you send SIGHUP signal to the pgpool parent process.

2007-07-19 15:01  y-mori

	* pool_process_query.c: BUGFIX: Occasionally, Bad file descripter
	  is read in parallel_query_mode

2007-07-18 20:33  devrim

	* pgpool.spec (tags: V1_2_1, V1_2): Update to 1.2

2007-07-17 17:58  y-mori

	* pool_process_query.c, pool_rewrite_outfuncs.c,
	  pool_rewrite_query.c, pool_rewrite_query.h, pool_system.c,
	  pool_type.h: Unification of replication mode and parallel query
	  mode Now It's still working.

2007-07-17 17:19  y-asaba

	* ChangeLog: update

2007-07-17 15:04  y-asaba

	* pool_process_query.c: Fix hang up when backend node did fast or
	  immediate shutdown.

	  If shutdown occured, postgres send an error which error code is
	  "57P01" and error message is "terminating connection due to
	  administrator command".

	  However, another nodes did not send any messages. pgpool waited for
	  a message from them. when the error is sended, pgpool reads the
	  message and degenerate.

2007-07-17 14:50  y-asaba

	* pool_process_query.c: Fix hang up when backend node did fast or
	  immediate shutdown.

	  If shutdown occured, postgres send an error which error code is
	  "57P01" and error message is "terminating connection due to
	  administrator command".

	  However, another nodes did not send any messages. pgpool waited for
	  a message from them. when the error is sended, pgpool reads the
	  message and degenerate.

2007-07-17 11:33  y-asaba

	* pool_process_query.c (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE):
	  Rearrange detect_deadlock_error().

2007-07-17 11:26  y-asaba

	* pool_process_query.c: Rearrange detect_deadlock_error().

2007-07-11 11:15  y-asaba

	* pool.h, pool_process_query.c, pool_stream.c (tags: V1_3, V1_2_1,
	  V1_2): 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.

2007-07-10 18:56  y-asaba

	* main.c (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool.h (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool_process_query.c,
	  pool_stream.c (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE):
	  * Change type of InRecovery variable to sig_atomic_t*

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

2007-07-09 14:18  y-asaba

	* main.c: Add comments.

2007-07-09 14:17  y-asaba

	* ChangeLog: update.

2007-07-09 14:00  y-asaba

	* config.h.in (tags: V1_3, V1_2_1, V1_2), configure.in, main.c
	  (tags: V1_3, V1_2_1, V1_2): 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.

2007-07-09 13:23  y-asaba

	* main.c: 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.

2007-07-09 10:29  y-asaba

	* config.guess (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1, ROOT_OF_V2_0_PARALLEL_UNSTABLE),
	  config.h.in (tags: V2_0_1, V2_0_0, V2_0_0_BETA1,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), configure (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), configure.in (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), ltmain.sh (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), aclocal.m4 (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), child.c (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pcp_child.c (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool_connection_pool.c (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool_process_query.c,
	  pool_query_cache.c (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE),
	  pool_stream.c: configure checks that OS has sys/select.h.  If it
	  exists, include it.

2007-07-06 17:32  y-asaba

	* child.c, pool_process_query.c, pool_type.h (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE): Load balancing node was chosen
	  before sending "SELECT" statement.  But this way had the following
	  problems.

	    psql>\d accounts
	    Did not find any relation with OID XXX

	  pgpool chooses it after receiving AuthenticationOK('R') message. So
	  pgpool load balance to the same node inside a same session.

2007-07-05 20:14  y-asaba

	* ChangeLog: Update ChangeLog.

2007-07-05 19:58  y-asaba

	* pool_process_query.c: Fix the following bugs in master_slave mode
	  && load_balance mode.

	  1.  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

	  2.  pgpool didn't load balance a SELECT query using extended
	  protocol.

2007-07-05 18:12  y-asaba

	* main.c: Improve signal handling.

	  We fixed signal handling at revision 1.6. That fix was to set a flag
	  in signal handler, then pgpool checked flags in safe points. However
	  It has a race condition in the following case.

	    CHECK_REQUEST;   <-- check flags
	    <signal handler> <-- set flags
	    pause();         <-- wait for signals

	  So, we modified to deliver signals in safe places which are in
	  pause() and sleep().

2007-07-05 11:14  y-asaba

	* pool_process_query.c:
	  * Remove debug code.
	  * Refactor ReadyForQuery() and do_command().

2007-07-04 17:18  y-asaba

	* pool_process_query.c: In replication mode, pgpool checks the
	  numbers of insert/update/delete tuples in CommandComplete message.
	  If these numbers are not same, a transaction is aborted by pgpool.
	  It is for data consistency.

	  TODO: This behavior will be able to switch by pgpool.conf.

2007-07-03 18:23  y-asaba

	* TODO (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE): Rearrange TODO list.

2007-06-29 23:15  y-asaba

	* main.c: Fix race condition between unsetting SIGCHLD flag and
	  unblocking SIGCHLD signal.

2007-06-28 21:35  y-asaba

	* main.c: Fix SIGUSR2 handling. The signal handler only set flag.
	  Then, pgpool call SIGUSR2 handler in CHECK_REQUEST macro.

2007-06-27 18:29  y-asaba

	* ChangeLog (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool.h,
	  pool_process_query.c: Fix hang up when a SELECT query has error
	  inside transaction block. It occurs only in simple query protocol.

2007-06-27 18:04  y-asaba

	* sample/pgpool_remote_start (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE): Fix checking the number of
	  arguments.

2007-06-27 17:30  y-asaba

	* ChangeLog, pool.h, pool_process_query.c: 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;

2007-06-26 10:35  y-asaba

	* pcp_child.c: Remove unused variable.

2007-06-22 19:10  t-ishii

	* Makefile.in (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE), aclocal.m4,
	  configure, parser/Makefile.in (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), parser/scan.c (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pcp/Makefile.in (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE): run autoconf and flex

2007-06-22 18:50  y-asaba

	* Makefile.am (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE), Makefile.in,
	  aclocal.m4, child.c, configure, configure.in, main.c,
	  pcp_child.c, pgpool.conf.sample (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool.h, pool_config.c (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool_config.l (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pool_process_query.c,
	  pool_type.h, recovery.c (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE),
	  doc/pgpool-ja.html (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE),
	  parser/Makefile.in, pcp/Makefile.am (tags: V2_0_0_BETA1,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), pcp/Makefile.in, pcp/pcp.c
	  (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE), pcp/pcp.h (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1, ROOT_OF_V2_0_PARALLEL_UNSTABLE),
	  pcp/pcp_recovery_node.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), sample/pgpool_recovery (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), sample/pgpool_remote_start,
	  sql/pgpool-recovery/Makefile (tags: V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1), sql/pgpool-recovery/pgpool-recovery.c,
	  sql/pgpool-recovery/pgpool-recovery.sql.in: Add new features in
	  pgpool-II 2.0.
	  * support online-recovery in replication mode.
	    - based on physical data copy

	  * improve replication mode.
	    - employ "primary copy method" to enhance the performance
	    - more stable replication

2007-06-21 10:17  y-asaba

	* ChangeLog: update ChangeLog.

2007-06-20 18:09  y-asaba

	* main.c: Fix SIGCHLD and SIGUSR1 signal handling. Signal handlers
	  set flags only, then a parent process checks flags in signal safe
	  places.

2007-06-20 17:14  t-ishii

	* pool_config.c, parser/gram.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE), parser/gram.h (tags: V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE), parser/scan.c
	  (tags: V1_2_1, V1_2): run flex

2007-06-18 11:40  y-asaba

	* pool_process_query.c: Fix memory leak in NotificationResponse().

2007-06-18 11:37  y-asaba

	* ChangeLog: update ChangeLog.

2007-06-18 11:34  y-asaba

	* pool_process_query.c:
	  * Fix compile warning.
	  * Fix memory leak in CursorResponse().

2007-06-18 10:33  t-ishii

	* Makefile.in (tags: V1_2_1, V1_2): run autoconf

2007-06-15 22:35  devrim

	* pgpool.spec (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE): Update spec
	  file

2007-06-15 12:21  y-asaba

	* NEWS (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE), doc/pgpool-ja.html
	  (utags: V1_1_1): Update release note.

2007-06-15 11:57  t-ishii

	* configure (tags: V1_1_1): Run autoconf.

2007-06-15 11:55  t-ishii

	* doc/pgpool-ja.html: Fix typo.

2007-06-14 16:44  y-asaba

	* ChangeLog (tags: V1_1_1): Prepare for 1.1.1

2007-06-12 10:49  y-asaba

	* NEWS: Prepare for 1.1.1

2007-06-11 15:37  y-asaba

	* configure.in (tags: V1_1_1), doc/pgpool-ja.html: Prepare for
	  1.1.1

2007-06-11 12:06  y-asaba

	* ChangeLog: Update ChangeLog.

2007-06-11 12:01  y-asaba

	* pool_process_query.c (tags: V1_1_1): Fix kind mismatch error when
	  load_balance_mode is true.

2007-06-07 11:38  y-asaba

	* pool_process_query.c: Fix handling nullmap (V2 only).

2007-06-06 17:32  yamaguti

	* doc/: pgpool-en.html (tags: ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1), pgpool-ja.html: added an explanation about command line
	  option "-a" for HBA file.

2007-06-02 09:54  y-asaba

	* pool_process_query.c: Fix typo EmptyQueryResponse message. pgpool
	  hung up in EXECUTE command.  (Patch contributed by Kenichi Sawada)

2007-05-29 10:58  y-asaba

	* pool_process_query.c: Fix handling protocol version 2.

2007-05-28 18:13  y-asaba

	* pool_process_query.c: Fix handling protocol version 2.

2007-05-25 12:02  y-asaba

	* Makefile.am (tags: V1_2_1, V1_2), Makefile.in (utags: V1_1,
	  V1_1_1): Fix typo

2007-05-25 11:45  y-asaba

	* ChangeLog (tags: V1_1): Prepare for 1.1

2007-05-25 11:37  y-asaba

	* doc/: pgpool-en.html, pgpool-ja.html (utags: V1_1): Add handling
	  "SELECT nextval".

2007-05-25 11:30  y-asaba

	* doc/pgpool-ja.html: Add Japanese release note for 1.1

2007-05-24 23:27  t-ishii

	* Makefile.in, aclocal.m4 (tags: V1_3, V1_2_1, V1_2, V1_1_1, V1_1),
	  configure (tags: V1_1), parser/Makefile.in (tags: V1_3, V1_2_1,
	  V1_2, V1_1_1, V1_1), pcp/Makefile.in (tags: V1_3, V1_2_1, V1_2,
	  V1_1_1, V1_1): Resync files generated by configure.in

2007-05-24 23:25  t-ishii

	* TODO (tags: V1_3, V1_2_1, V1_2, V1_1_1, V1_1): update
	  TODO(Japanese)

2007-05-24 15:42  y-asaba

	* NEWS (tags: V1_1): update NEWS

2007-05-24 15:38  y-asaba

	* parser/pool_memory.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1), ChangeLog: Fix
	  core dump in pool_memory_realloc().

2007-05-23 11:01  yamaguti

	* ChangeLog, NEWS:

	  fixed pgpool.pam so it is installed under $PREFIX/share/pgpool-II/

2007-05-23 10:59  yamaguti

	* ac_func_accept_argtypes.m4 (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1), pool_hba.c,
	  pool_hba.conf.sample (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1), pool_ip.c (tags:
	  V2_0_1, V2_0_0, V2_0_0_BETA1), pool_ip.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1), pool_path.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1),
	  pool_path.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1), ps_status.c
	  (tags: V2_0_1, V2_0_0, V2_0_0_BETA1), strlcpy.c (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1) (utags: ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1, V1_1_1, V1_2, V1_2_1, V1_3):

	  new files for HBA, ps display, log_hostname & log_connections

2007-05-22 15:28  y-asaba

	* pool_process_query.c (tags: V1_1): Add checking a message length
	  is valid.  (Reported by Fujii Masao)

2007-05-21 14:49  y-asaba

	* NEWS, configure.in (tags: V1_1), version.h (tags:
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1): Prepare for 1.1

2007-05-21 11:16  yamaguti

	* Makefile.am, Makefile.in: pgpool.pam and system_db.sql is now
	  installed under share/pgpool-II/

2007-05-17 15:46  yamaguti

	* ChangeLog, Makefile.am, Makefile.in, aclocal.m4, child.c (tags:
	  V1_1_1, V1_1), config.h.in (tags: V1_1_1, V1_1), configure,
	  configure.in, main.c (tags: V1_1_1, V1_1), pcp_child.c (tags:
	  V1_3, V1_2_1, V1_2, V1_1_1, V1_1), pgpool.conf.sample (tags:
	  V1_1_1, V1_1), pool.h (tags: V1_1_1, V1_1), pool_config.c (tags:
	  V1_1_1, V1_1), pool_config.l (tags: V1_1_1, V1_1),
	  pool_process_query.c, pool_query_cache.c (tags: V1_2, V1_1_1,
	  V1_1), pool_type.h (tags: V1_1_1, V1_1), doc/pgpool-en.html,
	  doc/pgpool-ja.html, parser/Makefile.in, parser/gram.c (tags:
	  V1_1_1, V1_1), parser/gram.h (tags: V1_1_1, V1_1),
	  parser/pool_parser.h (tags: V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1), pcp/Makefile.in,
	  sample/pgpool.pam (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1):
	  * Support HBA authentication.
	  * Support log_connections
	  * Support log_hostname
	  * Support "ps" status display
	  * Fixed compiler warning in pool_query_cache.c
	  * sample/pgpool.pam: PAM service configuration file. It will be
	    installed to "$PREFIX/share/"
	  * doc/pgpool-ja.html: Added pool_hba description.
	  * doc/pgpool-en.html: Added pool_hba description.
	  * Updated ChangeLog

2007-04-26 14:26  y-asaba

	* ChangeLog, pool_connection_pool.c (tags: V1_1_1, V1_1): Retry
	  connect() when it is interrupted by signal.

2007-04-20 16:18  y-asaba

	* ChangeLog: Add entry.

2007-04-20 15:41  y-asaba

	* pool_process_query.c: 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()

2007-04-15 20:26  t-ishii

	* pool_process_query.c: Fix read_kind_from_backend(). It calls
	  notice_backend_error() with fixed db node number 1. Make it the db
	  node which returns different packet kind from master.

2007-04-12 17:30  devrim

	* pool_process_query.c: Patch to surpress compiler warnings, per
	  Ralf Corsepius

2007-03-01 13:06  y-asaba

	* ChangeLog, pool_process_query.c: Support load balancing with
	  extended protocol.  (Parallel query isn't supported extended
	  protocol yet.)

2007-03-01 12:03  y-asaba

	* ChangeLog, parser/Makefile.am (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1), parser/copyfuncs.c
	  (tags: V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1): Porting deep copy functions for tree nodes from
	  PostgreSQL.

2007-02-28 20:04  y-asaba

	* ChangeLog: Add ChangeLog entry.

2007-02-28 19:44  y-asaba

	* Makefile.am: Fix link error on Solaris. Solaris's ld does not
	  have --rpath option.  So it uses libtool's -rpath option instead of
	  ld's option.

2007-02-21 04:38  devrim

	* pgpool.spec (tags: V1_1_1, V1_1): Fixes from Jarod Wilson
	  <jwilson@redhat.com>
	  - Create proper devel package, drop -libs package
	  - Nuke rpath
	  - Don't install libtool archive and static lib
	  - Clean up %%configure line
	  - Use proper %%_smp_mflags
	  - Install config files properly, without .sample on the end
	  - Preserve timestamps on header files

2007-02-20 18:20  devrim

	* pgpool.spec:
	  - Update to 1.0.2-1
	  - Fix various build problems and prepared for Fedora Submission


	  ----------------------------------------------------------------------

2007-02-20 15:02  devrim

	* pgpool.conf.sample: Update header so that we can see that it is
	  pgpool-II conf file (I was confused after removing pgpool and
	  installing pgpool-II :) )

2007-02-16 22:56  t-ishii

	* Makefile.in, configure, parser/Makefile.in, pcp/Makefile.in:
	  automake & autoconf

2007-02-16 20:31  y-asaba

	* ChangeLog, Makefile.am, configure.in, pool_connection_pool.c,
	  pool_query_cache.c, pcp/pcp.c (tags: V1_2, V1_1_1, V1_1),
	  pcp/pcp_stream.c (tags: V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1): Fixed compile error on MacOS X. MacOS's ld does
	  not have rpath option. So add --disable-rpath option to configure
	  for MacOS X.

2007-02-13 12:44  y-asaba

	* ChangeLog (tags: V1_0_2):
	  * Add entries using cvs2cl.

2007-02-12 16:23  y-asaba

	* doc/pgpool-ja.html (tags: V1_0_2): Add release note.

2007-02-12 15:51  y-asaba

	* doc/pgpool-ja.html: Add Japanese release note into
	  pgpool-ja.html.

2007-02-12 11:32  y-asaba

	* child.c, pool.h, pool_connection_pool.c (utags: V1_0_2): pgpool
	  *only* checks backend connection when connection pool is reused.

2007-02-09 12:54  y-asaba

	* NEWS (tags: V1_0_2): fix indent.

2007-02-09 12:50  y-asaba

	* NEWS: Remove '\000'.

2007-02-08 22:08  t-ishii

	* doc/pgpool-en.html (tags: V1_0_2): prepare for 1.0.2

2007-02-08 21:52  t-ishii

	* NEWS, config.h.in (tags: V1_0_2), configure (tags: V1_0_2):
	  Prepare for 1.0.2

2007-02-08 17:56  y-asaba

	* doc/pgpool-ja.html: Add new loadbalancing rule in replication
	  mode section.

2007-02-08 17:34  y-asaba

	* pool_query_cache.c, configure.in, pool_system.c (tags: V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1)
	  (utags: V1_0_2): Fixed configure error if libpq version is 7.4.x.
	  7.4 does not have PQprepare(). So when version is 7.4, pgpool uses
	  PREPARE statement instead of PQprepare().

2007-02-08 00:44  y-asaba

	* configure.in: Prepare for 1.0.2

2007-02-07 19:08  t-ishii

	* Makefile.in (tags: V1_0_2), aclocal.m4 (tags: V1_0_2), configure,
	  configure.in, pool_config.c (tags: V1_0_2), parser/Makefile.in
	  (tags: V1_0_2), pcp/Makefile.in (tags: V1_0_2): update
	  configure.in to use pg_config.  Patch made by Yoshiyuki Asaba.

2007-02-06 11:46  y-asaba

	* pool_connection_pool.c: Add checking socket state when connection
	  pool is reused.  If socket is closed, pgpool try to create new
	  connection pool.

2007-01-30 11:25  y-asaba

	* pool_process_query.c (tags: V1_0_2): Disable to load balance in
	    the following cases.
	  - SELECT FOR UPDATE
	    - SELECT INTO
	    - /* xxx */ SELECT ... (This is pgpool-I spec.)

2007-01-13 23:56  yamaguti

	* pool_signal.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1,
	  V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2):

	  fixed #ifndef ~ #define macro for that it could have been included
	  redundantly.

2007-01-10 04:02  y-asaba

	* pool_process_query.c: Fix auto-deallocation. If a client used PDO
	  interface, pgpool didn't clean prepared statement.

2007-01-05 02:27  devrim

	* COPYING (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2), child.c,
	  main.c (tags: V1_0_2), pcp_child.c (tags: V1_0_2), pgpool.8.in
	  (tags: V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2), pool.h,
	  pool_auth.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  pool_config.c, pool_config.l (tags: V1_0_2),
	  pool_connection_pool.c, pool_error.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2), pool_ipc.h (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2), pool_params.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2), pool_process_query.c, pool_query_cache.c,
	  pool_rewrite_query.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  pool_rewrite_query.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  pool_sema.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  pool_shmem.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1,
	  V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  pool_signal.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1,
	  V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  pool_signal.h, pool_stream.c (tags: V1_1_1, V1_1, V1_0_2),
	  pool_system.c, pool_type.h (tags: V1_0_2), parser/pool_memory.c
	  (tags: V1_0_2), parser/pool_memory.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  parser/pool_string.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2),
	  parser/pool_string.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2): Copyright
	  update

2006-12-25 19:14  y-asaba

	* Makefile.am (tags: V1_0_2), Makefile.in: Fix libpq link error
	  (Reported by ISHIDA Akio).

2006-12-04 14:49  t-ishii

	* pool_process_query.c: Fix bug with replication mode. With
	  UPDATE/DELETE, the number of affcted rows should not be sum of each
	  node.

2006-12-02 22:41  t-ishii

	* pool_process_query.c: Add backend status info to show pool_status

2006-12-02 22:40  t-ishii

	* main.c: enhance logging to make it clear what kind of
	  failover/failback event ocuured.

2006-12-02 22:38  t-ishii

	* TODO (tags: V1_0_2): update TODO document to reflect current
	  status

2006-11-30 07:33  devrim

	* child.c, pool_auth.c: Fix small typos in messages

2006-11-30 06:54  devrim

	* pgpool.conf.sample (tags: V1_0_2): Fix small typos in config file

2006-11-15 18:30  y-asaba

	* pool_process_query.c: Fix an extended query protocol handling.

2006-11-13 14:02  y-asaba

	* parser/pool_memory.c: Fix SIGSEGV under parallel mode.

2006-11-10 12:48  y-asaba

	* parser/pool_memory.c:
	  * Add NULL checking in pool_memory_free().

	  * Fix SIGSEGV in pool_memory_alloc() if allocate size is 8192 byte.

	    void *x;
	    pool_memory = pool_memory_create();
	    x = pool_memory_alloc(pool_memory, 8192);

2006-11-04 16:38  y-asaba

	* parser/pool_memory.c: Fixed a inifinite loop in
	  pool_memory_free().

2006-10-04 14:57  y-asaba

	* pool_rewrite_query.c: Fix rewriting a query which refers
	  pg_catalog.  Patch contributed by Yoshiharu Mori.

2006-10-04 04:31  devrim

	* pgpool.spec (tags: V1_0_2):
	  - Added -libs and -devel RPM
	  - Fix .so link problem
	  - Cosmetic changes to spec file

2006-10-04 04:29  devrim

	* pgpool.spec: [no log message]

2006-09-27 14:45  devrim

	* pgpool.spec:
	  * Thu Sep 27 2006 - Devrim GUNDUZ <devrim@commandprompt.com> 1.0.1-3
	  - Fix spec, per Yoshiyuki Asaba

	  * Thu Sep 26 2006 - Devrim GUNDUZ <devrim@commandprompt.com> 1.0.1-2
	  - Fixed rpmlint errors
	  - Fixed download url
	  - Added ldconfig for .so files

	  ** Thu Sep 21 2006 - David Fetter <david@fetter.org> 1.0.1-1
	  - Initial build pgpool-II 1.0.1 for PgPool Global Development Group

2006-09-27 11:14  y-asaba

	* pool_process_query.c: Fix load balancing algorithm. Patch
	  contributed by Jeff Davis.

	  See the following URL for more details.

	  http://pgfoundry.org/pipermail/pgpool-hackers/2006-September/000034.html

2006-09-25 12:03  y-asaba

	* doc/: pgpool-en.html, pgpool-ja.html: Add pam authentication in
	  supported authentication protocol list.  Reported by Jeff Davis.

2006-09-22 15:04  t-ishii

	* Makefile.am, Makefile.in, aclocal.m4, configure, pool_config.c,
	  parser/Makefile.in, parser/scan.c (tags: V1_1_1, V1_1, V1_0_2),
	  pcp/Makefile.in (utags: V1_0_1): Update Makefile.am to reflect
	  the fact that some doc names have been changed.

2006-09-22 14:39  t-ishii

	* ChangeLog (tags: V1_0_1), NEWS (tags: V1_0_1), configure,
	  configure.in (tags: V1_0_1): Version 1.0.1

2006-09-15 15:06  y-asaba

	* doc/pgpool-ja.html (tags: V1_0_1): A restriction of  extended
	  protocol is *only* in parallel mode.  Fixed the description.

2006-09-14 11:04  t-ishii

	* pool.h (tags: V1_0_1): Fix NUM_BACKENDS macro when operated in
	  MASTER_SLAVE mode.  See following message for more details.

	  Subject: [Pgpool-general] pgpool-II master/slave mode, BackendError
	  From: Jeff Davis <pgpool@j-davis.com> To:
	  pgpool-general@pgfoundry.org Date: Tue, 12 Sep 2006 16:48:49 -0700

2006-09-14 11:00  t-ishii

	* pool_process_query.c (tags: V1_0_1): Fix debug message in
	  simpleQuery() so that it correctly prints query string when operated
	  in MASTER_SLAVE mode.

2006-09-14 10:56  t-ishii

	* main.c (tags: V1_0_1): enhance health check error messages

2006-09-13 19:21  y-asaba

	* pool_process_query.c: Fix kind mismatch error in COPY FROM STDIN.

2006-09-11 23:50  y-asaba

	* doc/pgpool-en.html (tags: V1_0_1): Remove multibyte character.

2006-09-11 15:47  y-asaba

	* doc/: tutorial-ja.html (tags: V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  tutorial.html: Rename `tutorial.html' to `tutorial-ja.html'.

2006-09-11 15:42  y-asaba

	* README.euc_jp (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  doc/pgpool-ja.html, doc/pgpool.html:
	  * Rename `doc/pgpool.html' to `doc/pgpool-ja.html'.

	  * Merge Devrim's patch.

2006-09-11 15:32  y-asaba

	* doc/pgpool-en.html: Remove Japanese comment.

2006-09-11 15:13  y-asaba

	* doc/tutorial-en.html (tags: V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1):
	  Remove Japanese characters.

2006-09-11 14:53  y-asaba

	* README (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1):
	  Update README.

2006-09-08 21:01  devrim

	* doc/pgpool-en.html: Far better look for HTML page, suitable for
	  web and local browsing.

2006-09-08 20:09  devrim

	* doc/: pgpool-en.html, pgpool.html: comment last modified line for
	  a better look

2006-09-08 20:05  devrim

	* doc/pgpool.css (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1):
	  Add pgpool.css for readme files. This is the same stylesheet that we
	  use in pgpool page.

2006-09-08 19:16  devrim

	* doc/: pgpool-en.html, pgpool.html.en, tutorial-en.html,
	  tutorial.html.en:

	  Renamed files so that some browsers won't complain.

2006-09-08 12:35  t-ishii

	* README, configure.in, Makefile.am, aclocal.m4, Makefile.in,
	  config.h.in, AUTHORS, configure, COPYING, ChangeLog, INSTALL,
	  NEWS, TODO, config.guess, config.sub, depcomp, install-sh,
	  ltmain.sh, missing, mkinstalldirs, pg_md5.c, pool_config.c,
	  README.euc_jp, main.c, md5.c, md5.h, pgpool.conf.sample,
	  pgpool.spec, pool.h, pool_type.h, version.h, child.c,
	  pool_auth.c, pool_config.l, pool_error.c, pool_connection_pool.c,
	  pool_params.c, pool_process_query.c, pool_signal.c,
	  pool_signal.h, pool_stream.c, pcp.conf.sample, pcp_child.c,
	  pool_ipc.h, pool_sema.c, pool_shmem.c, pool_system.c,
	  pool_rewrite_query.c, pool_rewrite_query.h,
	  pool_rewrite_outfuncs.c, pgpool.8.in, pool_query_cache.c,
	  doc/pgpool.html, doc/pgpool.html.en, doc/tutorial.html,
	  doc/tutorial.html.en, parser/Makefile.am, parser/Makefile.in,
	  sample/dist_def_pgbench.sql, sql/system_db.sql, parser/gram.c,
	  parser/gram.h, parser/gram.y, parser/gramparse.h, parser/list.c,
	  parser/makefuncs.c, parser/makefuncs.h, parser/memnodes.h,
	  parser/nodes.c, parser/nodes.h, parser/parsenodes.h,
	  parser/parser.c, parser/parser.h, parser/pg_list.h,
	  parser/pool_memory.c, parser/pool_memory.h, parser/pool_string.c,
	  parser/pool_string.h, parser/keywords.c, parser/keywords.h,
	  parser/pool_parser.h, parser/primnodes.h, parser/scansup.h,
	  parser/value.c, parser/value.h, parser/outfuncs.c, parser/scan.c,
	  parser/scan.l, pcp/Makefile.am, pcp/Makefile.in, pcp/md5.h,
	  pcp/pcp.h, pcp/md5.c, pcp/pcp.c, pcp/pcp_attach_node.c,
	  pcp/pcp_detach_node.c, pcp/pcp_error.c, pcp/pcp_node_count.c,
	  pcp/pcp_stream.c, pcp/pcp_stream.h, pcp/pcp_node_info.c,
	  pcp/pcp_proc_count.c, pcp/pcp_proc_info.c, pcp/pcp_stop_pgpool.c,
	  pcp/pcp_systemdb_info.c: Initial revision

2006-09-08 12:35  t-ishii

	* README, configure.in, Makefile.am, aclocal.m4, Makefile.in,
	  config.h.in (tags: V1_0_1), AUTHORS (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), configure, COPYING (tags: V1_0_1), ChangeLog,
	  INSTALL (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  NEWS, TODO (tags: V1_0_1), config.guess (tags: V1_3, V1_2_1,
	  V1_2, V1_1_1, V1_1, V1_0_2, V1_0_1), config.sub (tags: V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), depcomp (tags: V2_3_1, V2_2_6, V2_3, V2_2_5,
	  V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  install-sh (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  ltmain.sh (tags: V1_3, V1_2_1, V1_2, V1_1_1, V1_1, V1_0_2,
	  V1_0_1), missing (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  mkinstalldirs (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pg_md5.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pool_config.c, README.euc_jp, main.c, md5.c (tags: V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  md5.h (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3,
	  V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2,
	  V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1,
	  V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pgpool.conf.sample (tags: V1_0_1), pgpool.spec (tags: V1_0_1),
	  pool.h, pool_type.h (tags: V1_0_1), version.h (tags: V1_0_2,
	  V1_0_1), child.c (tags: V1_0_1), pool_auth.c (tags: V1_0_1),
	  pool_config.l (tags: V1_0_1), pool_error.c (tags: V1_0_1),
	  pool_connection_pool.c (tags: V1_0_1), pool_params.c (tags:
	  V1_0_1), pool_process_query.c, pool_signal.c (tags: V1_0_1),
	  pool_signal.h (tags: V1_0_1), pool_stream.c (tags: V1_0_1),
	  pcp.conf.sample (tags: V2_3_1, V2_2_6, V2_3, V2_2_5, V2_2_4,
	  V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2, V2_2_0_RC1,
	  V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1, V2_1_0_BETA2,
	  V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pcp_child.c (tags: V1_0_1), pool_ipc.h (tags: V1_0_1),
	  pool_sema.c (tags: V1_0_1), pool_shmem.c (tags: V1_0_1),
	  pool_system.c (tags: V1_0_1), pool_rewrite_query.c (tags:
	  V1_0_1), pool_rewrite_query.h (tags: V1_0_1),
	  pool_rewrite_outfuncs.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pgpool.8.in (tags: V1_0_1), pool_query_cache.c (tags: V1_0_1),
	  doc/pgpool.html, doc/pgpool.html.en, doc/tutorial.html,
	  doc/tutorial.html.en, parser/Makefile.am (tags: V1_0_2, V1_0_1),
	  parser/Makefile.in, sample/dist_def_pgbench.sql (tags: V2_3_1,
	  V2_2_6, V2_3, V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0,
	  V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0,
	  V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), sql/system_db.sql (tags:
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), parser/gram.c (tags: V1_0_2,
	  V1_0_1), parser/gram.h (tags: V1_0_2, V1_0_1), parser/gram.y
	  (tags: V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), parser/gramparse.h (tags: V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), parser/list.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/makefuncs.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/makefuncs.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/memnodes.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), parser/nodes.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), parser/nodes.h (tags: V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), parser/parsenodes.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/parser.c (tags: V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/parser.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/pg_list.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/pool_memory.c (tags: V1_0_1), parser/pool_memory.h (tags:
	  V1_0_1), parser/pool_string.c (tags: V1_0_1),
	  parser/pool_string.h (tags: V1_0_1), parser/keywords.c (tags:
	  V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), parser/keywords.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/pool_parser.h (tags: V1_0_2, V1_0_1), parser/primnodes.h
	  (tags: V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), parser/scansup.h (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/value.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/value.h (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/outfuncs.c (tags: V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  parser/scan.c, parser/scan.l (tags: V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pcp/Makefile.am (tags: V1_3, V1_2_1, V1_2, V1_1_1, V1_1, V1_0_2,
	  V1_0_1), pcp/Makefile.in, pcp/md5.h (tags: V2_3_1, V2_2_6, V2_3,
	  V2_2_5, V2_2_4, V2_2_3, V2_2_2, V2_2_1, V2_2_0, V2_2_0_RC2,
	  V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1, V2_1_0, V2_1_0_RC1,
	  V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), pcp/pcp.h (tags: V1_3, V1_2_1, V1_2, V1_1_1,
	  V1_1, V1_0_2, V1_0_1), pcp/md5.c (tags: V2_2_3, V2_2_2, V2_2_1,
	  V2_2_0, V2_2_0_RC2, V2_2_0_RC1, V2_2_0_BETA2, V2_2_0_BETA1,
	  V2_1_0, V2_1_0_RC1, V2_1_0_BETA2, V2_1_0_BETA1, V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), pcp/pcp.c (tags: V1_0_2, V1_0_1),
	  pcp/pcp_attach_node.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), pcp/pcp_detach_node.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), pcp/pcp_error.c (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pcp/pcp_node_count.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), pcp/pcp_stream.c (tags: V1_0_2, V1_0_1),
	  pcp/pcp_stream.h (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), pcp/pcp_node_info.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), pcp/pcp_proc_count.c (tags:
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1), pcp/pcp_proc_info.c (tags: V2_0_1,
	  V2_0_0, V2_0_0_BETA1, V1_3, V1_2_1, V1_2,
	  ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1, V1_0_2, V1_0_1),
	  pcp/pcp_stop_pgpool.c (tags: V2_0_1, V2_0_0, V2_0_0_BETA1, V1_3,
	  V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE, V1_1_1, V1_1,
	  V1_0_2, V1_0_1), pcp/pcp_systemdb_info.c (tags: V2_0_1, V2_0_0,
	  V2_0_0_BETA1, V1_3, V1_2_1, V1_2, ROOT_OF_V2_0_PARALLEL_UNSTABLE,
	  V1_1_1, V1_1, V1_0_2, V1_0_1) (utags: V1_0_0): pgpool-II initial
	  release

