Toshihiro Kitagawa [Fri, 1 Apr 2011 10:57:35 +0000 (10:57 +0000)]
Fix hangup with CloseComplete(C) message handling.
Toshihiro Kitagawa [Thu, 31 Mar 2011 08:12:43 +0000 (08:12 +0000)]
Refactor pool_process_query().
- Fix hangup when received Flush(H) message.
See following for more details:
Subject: [Pgpool-general] Issue with pgpool-II-3.0.3-beta1 prepared
statements execution
Date: Tue, 22 Feb 2011 13:55:25 +0300
- Fix possible hangup that happen for the receiving timing of
ReadyForQuery(Z) message.
How to reproduce:
frontend -> pgpool-II -> pgpool-II -> backend
Both pgpool-II are in connection pooling mode.
Toshihiro Kitagawa [Wed, 30 Mar 2011 02:13:07 +0000 (02:13 +0000)]
Add follow_master_command directive.
We need to fix find_primary_node() that is still pending.
Patch contributed by Gilles Darold.
Toshihiro Kitagawa [Thu, 17 Mar 2011 02:12:09 +0000 (02:12 +0000)]
Fix warning of parser_set_param().
Toshihiro Kitagawa [Wed, 16 Mar 2011 09:11:25 +0000 (09:11 +0000)]
Forgot to add files.
Toshihiro Kitagawa [Wed, 16 Mar 2011 05:55:12 +0000 (05:55 +0000)]
Fix hangup when using /*NO LOAD BALANCE*/ comment.
The condition is load_balance_mode=true and PRIMARY_NODE_ID!=0
and /*NO LOAD BALANCE*/.
Toshihiro Kitagawa [Mon, 7 Mar 2011 07:00:14 +0000 (07:00 +0000)]
Change REAL_MASTER_NODE_ID to consider PRIMARY_NODE_ID.
Toshihiro Kitagawa [Mon, 7 Mar 2011 06:48:26 +0000 (06:48 +0000)]
Fix bug with load balancing such as following when PRIMARY_NODE_ID is
not same as REAL_MASTER_NODE_ID.
testdb=> BEGIN;
BEGIN
testdb=> SELECT * FROM t1;
ERROR: relation "t1" does not exist
LINE 1: SELECT * FROM t1;
^
testdb=> SELECT * FROM t2;
id
----
(0 rows)
testdb=> COMMIT;
ROLLBACK
Toshihiro Kitagawa [Mon, 7 Mar 2011 06:35:27 +0000 (06:35 +0000)]
Fix insert_lock() so that it extracts sequence name directly.
Toshihiro Kitagawa [Mon, 7 Mar 2011 05:56:58 +0000 (05:56 +0000)]
Change session information to integrate Portal and PreparedStatement
structure into POOL_SENT_MESSAGE structure.
Portal and PreparedStatement structure were used by only extended query
protocol before. but POOL_SENT_MESSAGE is used by simple query protocol too.
This change fixes issues that happen when two protocols were mixed in
one session.
PHP example)
// PREPARE using simple query protocol
pg_query($dbconn, 'PREPARE my_query(TEXT) AS SELECT $1::TEXT');
// EXECUTE using exetended query protocol
pg_execute($dbconn, "my_query", array('test'));
Tatsuo Ishii [Mon, 28 Feb 2011 00:50:51 +0000 (00:50 +0000)]
Fix pgpool-regclass() to be compiled in PostgreSQL 8.0 or later.
7.4 still produces errors but I doubt fixing effort is worth the trouble.
Tatsuo Ishii [Wed, 23 Feb 2011 07:21:19 +0000 (07:21 +0000)]
Update TODO.
Tatsuo Ishii [Wed, 23 Feb 2011 06:47:48 +0000 (06:47 +0000)]
Do not keep persistent connection to backends.
The connection may become bogus if a node down and then wake up
between replication delay checking period.
Restarting worker process is not feasible since there is a time lang
between backend down and restarting worker process.
Tatsuo Ishii [Wed, 23 Feb 2011 06:45:44 +0000 (06:45 +0000)]
Add error message to send_simplequery_message().
Enhance do_query() so that it emmits an error message when receiving ERROR
from backend.
Tatsuo Ishii [Wed, 23 Feb 2011 03:50:01 +0000 (03:50 +0000)]
Fix typo in comment.
Tatsuo Ishii [Tue, 22 Feb 2011 04:14:04 +0000 (04:14 +0000)]
Adapt application_name introduced in PostgreSQL 9.0.
When reusing connection, send application_name in the startup packet
to backend and send parameter status to frontend.
Tatsuo Ishii [Mon, 21 Feb 2011 02:16:11 +0000 (02:16 +0000)]
README file for pgpool-walrecrunning.
Tatsuo Ishii [Sun, 20 Feb 2011 07:07:34 +0000 (07:07 +0000)]
Fix discard_persistent_db_connection() so that it sends a terminate
packet to backend befoe closing the connection to the backend.
Without this, backend complains "unexpected EOF on client connection".
Tatsuo Ishii [Sat, 19 Feb 2011 12:44:35 +0000 (12:44 +0000)]
Enhance find_primary_node() not to fail if pgpool_walrecrunning()
is not installed. In this case it returns -1, which means
pgpool-II assumes the youngest node to be the primary.
Toshihiro Kitagawa [Fri, 18 Feb 2011 13:48:36 +0000 (13:48 +0000)]
Fix bug with load_balance that JDBC driver sends BEGIN to master node
many times.
Toshihiro Kitagawa [Fri, 18 Feb 2011 13:39:46 +0000 (13:39 +0000)]
Fix bug that /*NO LOAD BALANCE*/ doesn't work in stream mode.
Reported by Hadadi Peter.
Fix bug with load balance in stream mode.
Toshihiro Kitagawa [Fri, 18 Feb 2011 11:51:10 +0000 (11:51 +0000)]
Remove unnecessary function: load_balance_enabled().
Tatsuo Ishii [Fri, 18 Feb 2011 04:29:10 +0000 (04:29 +0000)]
Fix typo.
Toshihiro Kitagawa [Fri, 18 Feb 2011 03:27:36 +0000 (03:27 +0000)]
Fix typo.
Tatsuo Ishii [Wed, 16 Feb 2011 06:05:49 +0000 (06:05 +0000)]
Add sql/Makefile as a dist file.
Tatsuo Ishii [Wed, 16 Feb 2011 05:51:29 +0000 (05:51 +0000)]
Add sql directories main Makefile.
Tatsuo Ishii [Wed, 16 Feb 2011 05:31:24 +0000 (05:31 +0000)]
Adjust sql sub directory name change.
pgpool-walrecvrunning -> pgpool-walrecrunning
Tatsuo Ishii [Sun, 13 Feb 2011 12:04:44 +0000 (12:04 +0000)]
Update TODO
Tatsuo Ishii [Sun, 13 Feb 2011 11:44:02 +0000 (11:44 +0000)]
Run cvs2cl.pl -t --fsf.
Tatsuo Ishii [Thu, 10 Feb 2011 02:14:56 +0000 (02:14 +0000)]
Fix pool_get_node_info() so that it deals with node_number == -1 case.
This could happen get_next_master_node() returns -1 because
there's no master node available (all nodes down case).
Also tweak trigger_failover_command() to deal with pool_get_node_info()
returns NULL case.
Per report from Wouter D'Haeseleer.
Subject: [Pgpool-general] PGpool crashes when all DB servers go down
To: "pgpool-general@pgfoundry.org" <pgpool-general@pgfoundry.org>
Date: Mon, 07 Feb 2011 09:35:50 +0100
Tatsuo Ishii [Thu, 10 Feb 2011 02:08:26 +0000 (02:08 +0000)]
Update copyright years.
Toshihiro Kitagawa [Tue, 1 Feb 2011 08:18:23 +0000 (08:18 +0000)]
Fix bug that failover fails in raw mode.
This used to work but was broken in 3.0.
Tatsuo Ishii [Mon, 31 Jan 2011 14:47:06 +0000 (14:47 +0000)]
Fix warning of printf() and time_t.
Guillaume Lelarge [Sun, 30 Jan 2011 16:16:33 +0000 (16:16 +0000)]
Reorganize pgpool.conf sample files so that they are easier to read.
Guillaume Lelarge [Sun, 30 Jan 2011 16:09:40 +0000 (16:09 +0000)]
Add understandable "make" and "make install" end messages.
Tatsuo Ishii [Sun, 30 Jan 2011 00:23:30 +0000 (00:23 +0000)]
Add mention about pgpool-walrecrunning.
Tatsuo Ishii [Sun, 30 Jan 2011 00:17:55 +0000 (00:17 +0000)]
Rename pgpool-walrecvrunning, which was mistakenly named to
pgpool-walrecrunning.
Tatsuo Ishii [Thu, 27 Jan 2011 07:55:29 +0000 (07:55 +0000)]
Deprecate backend_socket_dir. Instead, if backend_hostname starts with
'/' it is regarded the as path to Unix domain.
If backend_hostname is left empty, then default Unix domain path(/tmp)
is used. This follows the convention of libpq interface.
Patch contributed by Jehan-Guillaume de Rorthais.
Additional fixes to main.c and recovery.c by me.
Tatsuo Ishii [Wed, 26 Jan 2011 01:11:32 +0000 (01:11 +0000)]
Fix pgpool-regclass().
It appeared that using PG_TRY/CATCH is not safe, sometimes backend
dies with PANIC: ERRORDATA_STACK_SIZE exceeded.
The only solution is stealing some functions from PostgreSQL
and modify it not to throw errors.
This is not elegant at all but PostgreSQL developers do not allow
to add such that built-in functions. Sigh.
Toshihiro Kitagawa [Tue, 25 Jan 2011 09:25:51 +0000 (09:25 +0000)]
Fix bug that DROP DATABASE fails.
This used to work but was broken in 3.0.
Tatsuo Ishii [Mon, 24 Jan 2011 04:44:45 +0000 (04:44 +0000)]
Update ChangeLog by using cvs2cl.pl -t --fsf.
Tatsuo Ishii [Mon, 24 Jan 2011 04:36:47 +0000 (04:36 +0000)]
Update English documentation.
- add description of new configuration directive 'log_destination'
- add description of new configuration directive 'syslog_facility'
- add description of new configuration directive 'syslog_ident'
- add some lines and sample to 'white_function_list' regex usage
- add some lines and sample to 'black_function_list' regex usage
- add information and fix output sample for the 'id' column on
'pool_nodes' command
Patch provided by Gilles Darold.
Also I added description for black_function_list that having lastval
and currval to black_function_list is a good idea.
Toshihiro Kitagawa [Thu, 20 Jan 2011 06:28:42 +0000 (06:28 +0000)]
Remove unnecessary variables: receive_extended_begin.
Tatsuo Ishii [Wed, 19 Jan 2011 02:52:59 +0000 (02:52 +0000)]
Fix bug with function_call_walker().
It always regarded the first element is the function name, which is
not true if the function has schema qualification. In this case we
should use lsecond() rather than lfirst() to extract the function name
because the first element is the schema name.
Tatsuo Ishii [Sun, 16 Jan 2011 10:31:38 +0000 (10:31 +0000)]
Implement relcache expiration control directive "relcache_expire".
Toshihiro Kitagawa [Fri, 14 Jan 2011 06:58:10 +0000 (06:58 +0000)]
Remove parameters from pool_status: recovery_password, system_db_password.
Toshihiro Kitagawa [Fri, 14 Jan 2011 06:42:02 +0000 (06:42 +0000)]
Remove unnecessary variables: replication_enabled, master_slave_enabled.
Tatsuo Ishii [Thu, 13 Jan 2011 06:10:05 +0000 (06:10 +0000)]
Fix update_pool_passwd()'s lack of dirname() usage portability.
Tatsuo Ishii [Tue, 11 Jan 2011 00:43:30 +0000 (00:43 +0000)]
Emit log if particular backend is down status while reading the status file.
This will make users less confusing.
Toshihiro Kitagawa [Thu, 6 Jan 2011 09:35:58 +0000 (09:35 +0000)]
Fix the bug which makes a child process crash while doing failover.
This bug has been there since pgpool-II 3.0.
Guillaume Lelarge [Thu, 6 Jan 2011 09:31:03 +0000 (09:31 +0000)]
Documentation rewrite by Marc Cousin. Reviewed by me.
Toshihiro Kitagawa [Tue, 4 Jan 2011 04:38:35 +0000 (04:38 +0000)]
Fix pool_status so that failback_command and fail_over_on_backend_error
show correct values.
Tatsuo Ishii [Thu, 30 Dec 2010 13:06:38 +0000 (13:06 +0000)]
Fix bug with debug_level directive. Patch contributed by Gilles
Darold. Followings are his explanation.
I found a bug when playing with pgpool yesterday. The problem is that
enabling debug_level to 1 into pgpool.conf doesn't has any effect as it
is overriden in the main.c file after getting configuration so that it
is only enabled when the -d command line option is present.
Tatsuo Ishii [Thu, 30 Dec 2010 00:47:05 +0000 (00:47 +0000)]
Add syslog support. Patch contributed by Gilles Darold.
Review and editing by Guillaume Lelarge.
Tatsuo Ishii [Sun, 26 Dec 2010 00:58:36 +0000 (00:58 +0000)]
Allow to use regular expressions in black and white function list.
Patch created by Gilles Darold. Here is the description he wrote.
Regex patch :
The regex struct array is stored in pool_config struct, it is
dynamically expendable by PATTERN_ARR_SIZE when it reached
NxPATTERN_ARR_SIZE (start with 16 regex max).
All entries in white_function_list or black_function_list are stored
in this array with a flag to differentiate them. To preserve
backward compatibility and prevent partial matching lists entries
are all prefixed with '^' and ended with '$' if not already done.
This also mean that if we want to match function beginning with
"write_" it has to be written : "write_.*". Indeed "^write_.*$"
works too.
Patch reviewd by Guillaume Lela.
Tatsuo Ishii [Thu, 23 Dec 2010 00:57:02 +0000 (00:57 +0000)]
Import PostgreSQL 9.0 parser. This allows to use CREATE INDEX with
implicit index name, which is new in 9.0.
Allow to use set standard_conforming_string command. It affetcs the
scanner in PostgreSQL 9.0 or later.
Change outfuncs.c to adopt to the effect of server encoding. This
happens in PostgreSQL 9.0 parser.
Patch provided by Akio Ishida.
Tatsuo Ishii [Thu, 16 Dec 2010 08:42:36 +0000 (08:42 +0000)]
Fix do_md5(). If raw mode or number of backend is 1, pgpool child segfaults.
patch contributed by Rob Shepherd, slight editing by Tatsuo Ishii.
Fix read_password_packet(). Guard against invalid password lenghth.
Fix send_password_packet(). password string in a password packet must be
a "string" message type, which must has a null termination. Otherwise
you will see "invalid passoword packet size" error message in backend.
Tatsuo Ishii [Tue, 14 Dec 2010 09:21:10 +0000 (09:21 +0000)]
Import PostgreSQL 9.0 parser. This allows to use CREATE INDEX with
implicit index name, which is new in 9.0.
Allow to use set standard_conforming_string command. It affetcs the
scanner in PostgreSQL 9.0 or later.
Change outfuncs.c to adopt to the effect of server encoding. This
happens in PostgreSQL 9.0 parser.
Patch provided by Akio Ishida.
Tatsuo Ishii [Tue, 14 Dec 2010 07:21:10 +0000 (07:21 +0000)]
Fix long standing bug with timestamp rewriting against array
and complex types. Failed examples are:
INSERT INTO r1(col[1], col2.foo) VALUES (1, 2); -- insert_column_item
UPDATE r1 SET col1[1] = 1, col2.foo = 1; -- set_target
PREPARE "p" (int4[]) AS SELECT $1[1]; -- c_expr
SELECT (ARRAY[1,2,3])[1];
SELECT (ARRAY[ARRAY[1]])[1][1];
SELECT ('{1,2,3}'::int[])[1];
SELECT ('{1,2,3}'::int[3])[1];
SELECT r1.col[1], (r1.col1).bar, (r1.col1).* FROM r1; -- columnref
SELECT (r1.col1).baz[1], (r1.col1).baz[1][2] FROM r1;
Patch provided by Akio Ishida.
Tatsuo Ishii [Tue, 14 Dec 2010 00:53:39 +0000 (00:53 +0000)]
Fix comment in send_password_packet().
Guillaume Lelarge [Sun, 28 Nov 2010 14:57:17 +0000 (14:57 +0000)]
Add node_id column in pool_nodes "view".
Patch from Jean-Paul Argudo.
Tatsuo Ishii [Sun, 28 Nov 2010 11:00:21 +0000 (11:00 +0000)]
Fix pool_get_passwd() in the case when user name is 32 bytes long.
Tatsuo Ishii [Wed, 17 Nov 2010 06:57:38 +0000 (06:57 +0000)]
Fix insert_lock().
Comment for this function was not correct. It did not issue BEGIN.
per_node_statement was not called for nodes other than master.
Tatsuo Ishii [Sun, 14 Nov 2010 10:59:21 +0000 (10:59 +0000)]
Fix insert_lock() to obtain proper sequence name by considering
that get_insert_command_table_name() returns double-qutation-added
table name. Without this, pgpool tries to execute
SELECT * FROM "foo"_bar_seq FOR UPDATED, which interepreted as
SELECT * FROM "foo" AS _bar_seq FOR UPDATED.
Tatsuo Ishii [Sun, 14 Nov 2010 07:33:49 +0000 (07:33 +0000)]
Fix load_hba() not to exit(1) if error occurs.
If exit(1) is issued, pgpool main exits but children remain,
which is not good.
Tatsuo Ishii [Fri, 12 Nov 2010 08:09:32 +0000 (08:09 +0000)]
Fix load_hba() not to exit(1) if error occurs.
If exit(1) is issued, pgpool main exits but children remain,
which is not good.
Tatsuo Ishii [Fri, 12 Nov 2010 05:47:01 +0000 (05:47 +0000)]
Fix find_primary_node to avoid segfault when pool_walrecrunning()
is not installed.
Tatsuo Ishii [Fri, 12 Nov 2010 01:37:08 +0000 (01:37 +0000)]
Fix typo.
Tatsuo Ishii [Fri, 12 Nov 2010 01:31:11 +0000 (01:31 +0000)]
Update Makefile.am.
Tatsuo Ishii [Fri, 12 Nov 2010 01:24:13 +0000 (01:24 +0000)]
Add missing entries for sql/walrecvrunning
Tatsuo Ishii [Wed, 10 Nov 2010 02:17:29 +0000 (02:17 +0000)]
Update grammer files generated by bison.
Tatsuo Ishii [Wed, 10 Nov 2010 02:00:57 +0000 (02:00 +0000)]
Oops. Forgot to commit.
Tatsuo Ishii [Wed, 10 Nov 2010 01:53:56 +0000 (01:53 +0000)]
Rerun libtoolize to adopt newer developping environment.
Toshihiro Kitagawa [Thu, 4 Nov 2010 09:54:16 +0000 (09:54 +0000)]
Fix bug in raw mode.
The following change has not worked since pgpool-II 3.0.
Subject: [Pgpool-committers] pgpool...
Date: Sun, 16 May 2010 08:38:16 +0000 (UTC)
- In row mode and if there's only one DB node, if a problem occurs
with the DB node, it will be brought to down status. However if the
DB node goes into good condition again, you can use the DB node
without restarting pgpool.
Tatsuo Ishii [Sat, 30 Oct 2010 11:12:43 +0000 (11:12 +0000)]
Allow to use %P(old primary node id) to failover/failback script.
This is neccessary for failover script in streaming replication mode.
Tatsuo Ishii [Sat, 30 Oct 2010 03:23:36 +0000 (03:23 +0000)]
Add -c (checksum) option to ensure reliable file transmittion.
Tatsuo Ishii [Fri, 22 Oct 2010 23:53:20 +0000 (23:53 +0000)]
Fix in-portability of the way to use dirname(3) in locating
pool_passwd. Bug report from a FreeBSD user.
Tatsuo Ishii [Wed, 20 Oct 2010 01:08:55 +0000 (01:08 +0000)]
Fix bug when primary node is not the youngest. Before pgpool-II
unconditionally assumed the master node(the youngest live node) is a
primary server, which is apprently wrong assumption. To fix the
problem, now pgpool-II have info on shmem(Req_info) to know which is
the primary. The info is set when 1)pgpool-II started 2)failover
occurs. The work is done by new function find_primary_node(main.c). It
does SELECT pg_is_in_recovery() AND pgpool_walrecrunning() to know the
node in question is actually standby. pgpool_walrecrunning() is new
PostgreSQL C function, to check if walreceiver is in running
status. This is neccessary when failover occurs. Unfortunately
pg_is_in_recovery() returns true even if standby is promoting because
it found a trigger file. Installing pgpool_walrecrunning() is annoying
but no way. Also where_to_send() is modified to use PRIMARY_NODE_ID,
rather than MASTER_NODE_ID. CVS:
----------------------------------------------------------------------
main.c pool.h pool_query_context.c pool_worker_child.c CVS: Added
Files: CVS: sql/pgpool-walrecvrunning/Makefile CVS:
sql/pgpool-walrecvrunning/pgpool-walrecrunning.c CVS:
sql/pgpool-walrecvrunning/pgpool-walrecrunning.sql.in CVS:
----------------------------------------------------------------------
Tatsuo Ishii [Wed, 20 Oct 2010 00:34:22 +0000 (00:34 +0000)]
Fix bug with find_victim_node. If the number of
inserted/updated/deleted tuples at a victim node is 0, no failover
event happens.
See:
Subject: Re: [Pgpool-general] Replication failover problem
Date: Wed, 20 Oct 2010 09:24:30 +0900 (JST)
For mode details.
Tatsuo Ishii [Tue, 19 Oct 2010 23:47:33 +0000 (23:47 +0000)]
Add entry for failover_if_affected_tuples_mismatch.
I seem to forgot to add this for 3.0 release. Sigh.
Also expand column name from 34 to 64, since
failover_if_affected_tuples_mismatch. is longer than 32.
Toshihiro Kitagawa [Tue, 19 Oct 2010 14:36:41 +0000 (14:36 +0000)]
Prepare 3.0.1
Tatsuo Ishii [Tue, 19 Oct 2010 11:22:09 +0000 (11:22 +0000)]
Update ChangeLog.
Tatsuo Ishii [Tue, 19 Oct 2010 11:17:38 +0000 (11:17 +0000)]
Fix typo.
Toshihiro Kitagawa [Tue, 19 Oct 2010 08:57:18 +0000 (08:57 +0000)]
Fix hungup when a query sent to one node caused an error.
Toshihiro Kitagawa [Fri, 15 Oct 2010 03:10:56 +0000 (03:10 +0000)]
Fix ErrorResponse so that it checks existence of a session context.
Tatsuo Ishii [Thu, 14 Oct 2010 10:42:40 +0000 (10:42 +0000)]
Fix typo. Patch contributed by Asaf Ohaion.
Tatsuo Ishii [Thu, 14 Oct 2010 06:39:37 +0000 (06:39 +0000)]
Fix typo in English doc. Patch contributed by Asaf Ohaion.
Toshihiro Kitagawa [Tue, 12 Oct 2010 11:39:37 +0000 (11:39 +0000)]
Fix portal handling in extended query protocol.
Now, prepared statements and portals are closed separately.
This issue is possible to reappear by a program using setFetchSize(1) of JDBC.
Toshihiro Kitagawa [Tue, 12 Oct 2010 11:05:00 +0000 (11:05 +0000)]
Cancel previous commit.
Toshihiro Kitagawa [Fri, 1 Oct 2010 06:15:34 +0000 (06:15 +0000)]
Add a new option for md5 authentication: -U, --username=NAME.
Fix help message.
Tatsuo Ishii [Tue, 28 Sep 2010 08:00:48 +0000 (08:00 +0000)]
Fix bug with md5 auth. If there's more than 1 servers to be
authenticated, it sefaults.
Toshihiro Kitagawa [Mon, 27 Sep 2010 02:01:57 +0000 (02:01 +0000)]
Fix the bug that causes segfault of a child process when syntax error
occurred in extended query protocol.
Toshihiro Kitagawa [Fri, 10 Sep 2010 00:42:14 +0000 (00:42 +0000)]
Prepare 3.0
Toshihiro Kitagawa [Thu, 9 Sep 2010 04:15:45 +0000 (04:15 +0000)]
Update flow charts.
Tatsuo Ishii [Thu, 9 Sep 2010 02:41:50 +0000 (02:41 +0000)]
Fix typo and enhance documents.
Update release date.
Toshihiro Kitagawa [Wed, 8 Sep 2010 08:45:10 +0000 (08:45 +0000)]
Prepare 3.0-RC1
Toshihiro Kitagawa [Tue, 7 Sep 2010 08:42:00 +0000 (08:42 +0000)]
Fix typo.
Toshihiro Kitagawa [Mon, 6 Sep 2010 08:33:32 +0000 (08:33 +0000)]
Fix the bug with previous fix.
Tatsuo Ishii [Mon, 6 Sep 2010 05:03:21 +0000 (05:03 +0000)]
Use custom function pgpool_regclass() instead of regclass to convert
table name to oid. Problem with regclass is, it throws an error if
the table does not exist. pgpool_regclass is just a wrapper of
regclass by using PG_TRY()/PG_CATCH().
If user does not install pgpool_regclass(), pgpool-II falls back
to pre 3.0 behavior, i.e. ignores schema qualification.
Tatsuo Ishii [Mon, 6 Sep 2010 02:39:18 +0000 (02:39 +0000)]
Add pgpool_regclass function. This is an alternative for regclassin.
Problem is, regclassin throws an error if invalid table name is
specified and pgpool's internal query fails.
Someday we might have such a builtin function but until that day
we use pgpool_regclass instead...