Tatsuo Ishii [Mon, 26 Jul 2010 07:56:13 +0000 (07:56 +0000)]
More working in progress updation.
Cosmetic changes (h3, 4 etc. -> h1)
Add more description to master/slave+streaming rep.
Toshihiro Kitagawa [Mon, 26 Jul 2010 05:27:02 +0000 (05:27 +0000)]
Fix typo.
Update release note ver.3.0.
Tatsuo Ishii [Mon, 26 Jul 2010 02:52:04 +0000 (02:52 +0000)]
Work in progress docs update for pgpool-II 3.0.
Tatsuo Ishii [Mon, 26 Jul 2010 00:23:38 +0000 (00:23 +0000)]
Fix pool_passwd handling. It broke pass to config file, and caused
reload config failure.
Tatsuo Ishii [Sun, 25 Jul 2010 08:17:59 +0000 (08:17 +0000)]
Fix pool_init_process_context(). It forgot to set process id (not UNIX
pid).
Tatsuo Ishii [Fri, 23 Jul 2010 09:40:19 +0000 (09:40 +0000)]
Allow to online recovery standby node in streaming replication
mode. Primary node is not allowed, however.
Tatsuo Ishii [Fri, 23 Jul 2010 09:38:55 +0000 (09:38 +0000)]
Destroy session context at the end of session.
Tatsuo Ishii [Fri, 23 Jul 2010 06:54:34 +0000 (06:54 +0000)]
Fix do_query so that 0 out malloced area. Without this,
subsequent call to free_select_result(res) cause invalid
free() call.
Tatsuo Ishii [Fri, 23 Jul 2010 06:22:34 +0000 (06:22 +0000)]
Fix in case of health_check period is 0.
Tatsuo Ishii [Fri, 23 Jul 2010 06:08:33 +0000 (06:08 +0000)]
Add reset_context flag to session context.
This is to be called while executing reset queries.
Fix SimpleQuery so that if function call is executed under
dummy query context.
Tatsuo Ishii [Fri, 23 Jul 2010 06:04:17 +0000 (06:04 +0000)]
Add new function pool_session_context_destroy, which destorys
session context.
Shoould be called at the end of session.
For now it is just called at the very beginning of session.
Also it needs more work to release memory.
Toshihiro Kitagawa [Fri, 23 Jul 2010 05:40:15 +0000 (05:40 +0000)]
Fix pool_init_session_context so that it set query_context to NULL.
Toshihiro Kitagawa [Fri, 23 Jul 2010 04:57:15 +0000 (04:57 +0000)]
Fix read_kind_from_backend so that it check query_context exist.
Toshihiro Kitagawa [Thu, 22 Jul 2010 08:50:51 +0000 (08:50 +0000)]
Fix segmentation fault when executed JDBC test suite.
Tatsuo Ishii [Thu, 22 Jul 2010 05:50:03 +0000 (05:50 +0000)]
Fix SimpleQuery. If query is rewritten by timestamp, query string and
its length was not consistent.
Tatsuo Ishii [Thu, 22 Jul 2010 04:24:34 +0000 (04:24 +0000)]
Add failover_if_affected_tuples_mismatch which trigger when
number of affcted tuples by UPDATE/DELETE.
Toshihiro Kitagawa [Wed, 21 Jul 2010 12:16:20 +0000 (12:16 +0000)]
Fix hungup when executed regression test.
Toshihiro Kitagawa [Wed, 21 Jul 2010 10:08:22 +0000 (10:08 +0000)]
Fix hungup when executed Copy from stdin.
Toshihiro Kitagawa [Wed, 21 Jul 2010 08:01:58 +0000 (08:01 +0000)]
Fix CommandComplete so that it doesn't crash when executing DEALLOCATE
in Simple query protocol.
Toshihiro Kitagawa [Wed, 21 Jul 2010 07:08:07 +0000 (07:08 +0000)]
Merge Revision 1.59.
Tatsuo Ishii [Wed, 21 Jul 2010 07:05:27 +0000 (07:05 +0000)]
Fix hungup when simple error query issued.
Toshihiro Kitagawa [Wed, 21 Jul 2010 05:31:39 +0000 (05:31 +0000)]
Add function parse_before_bind() which is used in Load balance mode.
Add function overwrite_map_for_deallocate() which is used to overwrite
where_ot_send map by a specified query context.
Add length and contents arguments to private functions that process message.
Remove pending_function variable.
Change ReadyForQuery() so that it does not destroy a query context in
extended query protocol.
Refactor following functions.
- Parse()
- Execute()
- ProcessFrontendResponse()
Add private functions that process message.
- Bind()
- Describe()
- Close()
- FunctionCall3()
- ParseComplete()
- BindComplete()
- CloseComplete()
- CommandComplete()
- ErrorResponse3()
Toshihiro Kitagawa [Wed, 21 Jul 2010 05:16:30 +0000 (05:16 +0000)]
Divide a part of pool_process_query() into ProcessBackend().
Divide SimpleForwardToFrontend() into private functions.
Divide SimpleForwardToBackend() into private functions.
send_sync_to_recover() is not used now.
Toshihiro Kitagawa [Wed, 21 Jul 2010 05:06:42 +0000 (05:06 +0000)]
Fix bug that did not clear a list at pool_clear_prepared_statement_list().
Fix bug that change state of query_in_progres flag at
pool_remove_prepared_statement_by_pstmt_name().
Change variables of list so that they are not pointer.
Change pool_create_prepared_statement() so that it does not copy a query context.
Remove pending_function variable.
Move static functions to the end.
Add length variable and contents variable to PreparedStatement structure.
These variables hold the contents of Parse message.
Add following flags.
- doing_extended_query_message
- ignore_till_sync
- pool_status_stmt
Toshihiro Kitagawa [Wed, 21 Jul 2010 04:33:59 +0000 (04:33 +0000)]
Add memory_context variable.
Add query_state variable that represent state of extended query.
Add function pool_set_query_state().
Add support for "NO LOAD BALANCE" comment.
Remove unused variables.
Tatsuo Ishii [Wed, 21 Jul 2010 02:59:44 +0000 (02:59 +0000)]
Fix send_to_where so that all transaction commands are sent to primary.
Tatsuo Ishii [Wed, 21 Jul 2010 00:41:04 +0000 (00:41 +0000)]
Fix ProcessFrontendResponse so that Function call request
to be processed properly in master/slave mode.
Tatsuo Ishii [Tue, 20 Jul 2010 14:08:39 +0000 (14:08 +0000)]
Do not start internal transaction if taget backend is only one.
If SAVEPOINT/ROLLBACK TO/RELEASE SAVEPOINT, send to primary only.
Tatsuo Ishii [Tue, 20 Jul 2010 08:52:28 +0000 (08:52 +0000)]
Support 9.0's new VACUUM syntax.
Tatsuo Ishii [Tue, 20 Jul 2010 08:07:50 +0000 (08:07 +0000)]
Support 9.0's new VACUUM syntax.
Tatsuo Ishii [Tue, 20 Jul 2010 08:04:48 +0000 (08:04 +0000)]
Fix is_internal_transaction_needed. Add lots of missing query type
appeared in 9.0 (still our parser does not parse some of them).
Tatsuo Ishii [Tue, 20 Jul 2010 08:03:28 +0000 (08:03 +0000)]
Fix where_to_send so that DEALLOCATE ALL case works properly.
Tatsuo Ishii [Mon, 19 Jul 2010 12:02:33 +0000 (12:02 +0000)]
Add modules to handle where to send map for SQL level
PREPARE/EXECUTE/DEALLOCATE. This is used for non-extended protocol
only.
Tatsuo Ishii [Mon, 19 Jul 2010 05:46:13 +0000 (05:46 +0000)]
Add char *query parameter to is_2pc_transaction_query and
send_to_where. For now, it is not used, but soon we need to take care
about SQL comments.
Tatsuo Ishii [Sun, 18 Jul 2010 06:11:39 +0000 (06:11 +0000)]
Fix SimpleQuery so that statements our parser does not understand
are sent to all nodes(in replication mode) or primary/master node.
Tatsuo Ishii [Sun, 18 Jul 2010 06:09:32 +0000 (06:09 +0000)]
Fix where_to_send. DISCARD statement should be sent to all DB nodes.
Tatsuo Ishii [Thu, 15 Jul 2010 05:06:46 +0000 (05:06 +0000)]
Fix ReadyForQuery so that it does not crush when some of DB nodes
goes down.
Tatsuo Ishii [Wed, 14 Jul 2010 08:58:24 +0000 (08:58 +0000)]
Remove unnecessary variable.
Fix pool_process_query() so that it checks healthy backend when
executing reset_query.
Tatsuo Ishii [Wed, 14 Jul 2010 08:10:55 +0000 (08:10 +0000)]
Fix pool_start_query and pool_virtual_master_db_node_id
so that they use REAL_MASTER_NODE_ID, rather than 0.
This is neccessary when primary node (0) goes down.
Tatsuo Ishii [Wed, 14 Jul 2010 07:40:22 +0000 (07:40 +0000)]
pgpool links shared memory version of pool_config.l
On the other hand pg_md5 links private memory version of
pool_config.l.
This commit does some dirty tricks by creating a fake source file.
Tatsuo Ishii [Wed, 14 Jul 2010 07:37:39 +0000 (07:37 +0000)]
Check health DB nodes before doing delay checking.
Tatsuo Ishii [Wed, 14 Jul 2010 04:53:09 +0000 (04:53 +0000)]
Add new meta character "%H" which represents the host name of the new
master node to failover/failback command.
Tatsuo Ishii [Wed, 14 Jul 2010 04:51:42 +0000 (04:51 +0000)]
Fix typo in comment.
Tatsuo Ishii [Tue, 13 Jul 2010 08:41:13 +0000 (08:41 +0000)]
Support 2PC commands in SR+HS mode.
Import read/write query map from PostgreSQL 9.0. Although our parser
does not support:
T_AlterDefaultPrivilegesStmt
T_DoStmt
T_AlterTableSpaceOptionsStmt
Tatsuo Ishii [Tue, 13 Jul 2010 08:36:45 +0000 (08:36 +0000)]
Fix end_internal_transaction: Use INTERNAL_TRANSACTION_STARTED macro
at proper position.
Tatsuo Ishii [Tue, 13 Jul 2010 08:34:28 +0000 (08:34 +0000)]
Try to recover from temporary connection failure.
Tatsuo Ishii [Tue, 13 Jul 2010 08:33:17 +0000 (08:33 +0000)]
Fix typo in debug message
Toshihiro Kitagawa [Tue, 13 Jul 2010 01:00:17 +0000 (01:00 +0000)]
Fix SimpleQuery(). Now it execute EXECUTE and DEALLOCATE statement correctly.
Tatsuo Ishii [Mon, 12 Jul 2010 02:37:21 +0000 (02:37 +0000)]
Fix typo.
Tatsuo Ishii [Sun, 11 Jul 2010 13:53:28 +0000 (13:53 +0000)]
Allow load balancing even in an explicit trasaction.
Tatsuo Ishii [Sun, 11 Jul 2010 13:52:10 +0000 (13:52 +0000)]
Fix main so that pool_config debug out is enabled by command line
optioin -d.
Tatsuo Ishii [Sun, 11 Jul 2010 04:09:06 +0000 (04:09 +0000)]
Now transaction state is managed per backend.
Tatsuo Ishii [Sat, 10 Jul 2010 11:18:28 +0000 (11:18 +0000)]
Now transaction state is per backend.
Change TSTATE macro.
Add new INTERNAL_TRANSACTION_STARTED macro.
Made appropreate changes to other modules.
Tatsuo Ishii [Sat, 10 Jul 2010 11:13:21 +0000 (11:13 +0000)]
Add ifdef not to declare unnessary variable(int dist_num;).
Tatsuo Ishii [Sat, 10 Jul 2010 11:10:35 +0000 (11:10 +0000)]
Add md5 checking in pool_hba.conf.
Also add description about pg_md5's md5 support.
Toshihiro Kitagawa [Fri, 9 Jul 2010 01:14:28 +0000 (01:14 +0000)]
Fix rewrite_timestamp() so that it use PreparedStatement instead of Portal.
Toshihiro Kitagawa [Fri, 9 Jul 2010 01:08:51 +0000 (01:08 +0000)]
Change pool_process_query.c, pool_proto_modules.c and child.c so that
they use session_context and query_context.
Toshihiro Kitagawa [Wed, 30 Jun 2010 00:31:55 +0000 (00:31 +0000)]
Add structures: PreparedStatement, Portal, PreparedStatementList and PortalList.
Add functions to operate these structures.
Toshihiro Kitagawa [Wed, 30 Jun 2010 00:12:11 +0000 (00:12 +0000)]
Add extended query protocol support to pool_send_and_wait().
Toshihiro Kitagawa [Mon, 28 Jun 2010 10:15:33 +0000 (10:15 +0000)]
Fix description about immediate mode of --help.
Toshihiro Kitagawa [Mon, 28 Jun 2010 10:08:58 +0000 (10:08 +0000)]
Forgot to add README.online-recovery.
Tatsuo Ishii [Mon, 28 Jun 2010 09:14:36 +0000 (09:14 +0000)]
Fix bug with session context initialization. To reproduce the bug:
num_init_children = 1
connect as a user
connect as another user and you get a segfault.
Tatsuo Ishii [Sun, 27 Jun 2010 23:18:11 +0000 (23:18 +0000)]
Forgot to add pool_passwd.c pool_passwd.h.
Modulaize pool_passwd update function.
Tatsuo Ishii [Sun, 27 Jun 2010 22:39:34 +0000 (22:39 +0000)]
Add missing header file.
Tatsuo Ishii [Sun, 27 Jun 2010 13:02:57 +0000 (13:02 +0000)]
Implement md5 authentication using pool_passwd.
Still need to rewrite documents and pgpool.config samples.
Tatsuo Ishii [Mon, 21 Jun 2010 05:54:22 +0000 (05:54 +0000)]
Forgot to add new files.
Tatsuo Ishii [Mon, 21 Jun 2010 05:46:57 +0000 (05:46 +0000)]
First cut of standby server lag checking in streaming replication
mode. New directive delay_threshold and log_standby_delay added.
See docs for more details.
Tatsuo Ishii [Sun, 20 Jun 2010 10:31:03 +0000 (10:31 +0000)]
Fix pool_where_to_send in case of SELECT+transaction case.
Tatsuo Ishii [Sun, 20 Jun 2010 07:41:14 +0000 (07:41 +0000)]
Add pool_worker_child.c which implements new worker process
for checking standby lagging in streaming replication.
Also remove unnecessary variables in child.c.
Tatsuo Ishii [Sat, 19 Jun 2010 01:56:11 +0000 (01:56 +0000)]
Remove unnecessary variable.
Tweak comments.
Tatsuo Ishii [Thu, 17 Jun 2010 09:11:17 +0000 (09:11 +0000)]
Add proper header comments.
Use getopt_long, rather than homebrew command analysis routine.
Add --md5auth argument(just a mock up)
Tatsuo Ishii [Mon, 14 Jun 2010 05:29:54 +0000 (05:29 +0000)]
Change next version no. from 2.4-current to 3.0-dev.
Tatsuo Ishii [Sun, 13 Jun 2010 23:53:25 +0000 (23:53 +0000)]
Add description of client_idle_limit_in_recover = -1 case.
Tatsuo Ishii [Fri, 11 Jun 2010 09:24:23 +0000 (09:24 +0000)]
Master/slave + Streaming Replicaton first cut.
Tatsuo Ishii [Fri, 11 Jun 2010 07:07:16 +0000 (07:07 +0000)]
Call pool_query_context_destroy instead of
pool_unset_query_in_progress in ReadyForQuery.
Tatsuo Ishii [Fri, 11 Jun 2010 07:05:11 +0000 (07:05 +0000)]
Make start_load_balance and end_load_balance to empty functions.
Tatsuo Ishii [Fri, 11 Jun 2010 03:46:16 +0000 (03:46 +0000)]
Remove unnessary global variables.
Tatsuo Ishii [Thu, 10 Jun 2010 10:05:32 +0000 (10:05 +0000)]
Fix MASTER* macros not to use global variable in_load_balance.
Tatsuo Ishii [Thu, 10 Jun 2010 06:47:26 +0000 (06:47 +0000)]
Forgot to commit delivered files.
Tatsuo Ishii [Thu, 10 Jun 2010 06:46:37 +0000 (06:46 +0000)]
Unbrake SimpleQuery(). Now it handles master/slave mode correctly.
Tatsuo Ishii [Thu, 10 Jun 2010 06:45:57 +0000 (06:45 +0000)]
Remove unnessary statement. It's now in VALIAD_BACKEND macro.
Tatsuo Ishii [Thu, 10 Jun 2010 06:44:03 +0000 (06:44 +0000)]
Change definition of REPLICATION/MASTER_SLAVE
Do not refer to pool_config->replication_enabled, master_slave_enabled
Tatsuo Ishii [Thu, 10 Jun 2010 06:42:31 +0000 (06:42 +0000)]
Change definition of REPLICATION/MASTER_SLAVE
Do not refer to pool_config->replication_enabled, master_slave_enabled
Tatsuo Ishii [Thu, 10 Jun 2010 01:54:42 +0000 (01:54 +0000)]
Fix comment: pool_status -> pgpool_status
Tatsuo Ishii [Wed, 9 Jun 2010 11:33:48 +0000 (11:33 +0000)]
Fix typo in help message from main program.
Add description about --discard-status to docs.
Fix description about replication_stop_on_mismatch.
Tatsuo Ishii [Wed, 9 Jun 2010 02:03:15 +0000 (02:03 +0000)]
Add -D (--discard-status) argument not to restore previous down status.
Toshihiro Kitagawa [Tue, 8 Jun 2010 08:34:26 +0000 (08:34 +0000)]
Refactor pool_proto_modules.c.
Now it is divided into pool_proto_modules.c and pool_proto2.c.
pool_proto2.c has functions that correspond to protocol 2.0.
Toshihiro Kitagawa [Tue, 8 Jun 2010 05:39:22 +0000 (05:39 +0000)]
Fix pgpool.conf boolean variables to take the same range of string
values as postgresql.conf.
Tatsuo Ishii [Mon, 7 Jun 2010 08:29:44 +0000 (08:29 +0000)]
Add master_slave_sub_mode
Tatsuo Ishii [Sun, 6 Jun 2010 11:14:18 +0000 (11:14 +0000)]
Remove in_progress global variable.
Tatsuo Ishii [Sun, 6 Jun 2010 10:17:32 +0000 (10:17 +0000)]
To avoid direct access to stream buffer from abstraction point of
view, add two macros:
#define pool_read_buffer_is_empty(connection)
#define pool_discard_read_buffer(connection)
Tatsuo Ishii [Fri, 4 Jun 2010 07:39:42 +0000 (07:39 +0000)]
Add query context module.
Tatsuo Ishii [Thu, 3 Jun 2010 05:48:46 +0000 (05:48 +0000)]
MAX_CONNECTION_SLOTS should be equal to MAX_NUM_BACKENDS.
Tatsuo Ishii [Wed, 2 Jun 2010 10:06:51 +0000 (10:06 +0000)]
Refactoring simpleQuery part 1. Move some parallel query processing
to pool_rewrite_query.c.
Also fix sloppy coding (no "#ifdef...") of pool_rewrite_query.h.
Tatsuo Ishii [Wed, 2 Jun 2010 10:04:37 +0000 (10:04 +0000)]
Fix typo.
Tatsuo Ishii [Wed, 2 Jun 2010 09:23:22 +0000 (09:23 +0000)]
Remove LocalSessionId, which is not neccessary any more.
Tatsuo Ishii [Wed, 2 Jun 2010 08:51:19 +0000 (08:51 +0000)]
Add session context module.
Tatsuo Ishii [Wed, 2 Jun 2010 06:52:34 +0000 (06:52 +0000)]
Introduce process context module
Tatsuo Ishii [Wed, 2 Jun 2010 02:05:48 +0000 (02:05 +0000)]
Make system DB connection initialize process to static function.
Refactoring effort.
Tatsuo Ishii [Tue, 1 Jun 2010 09:25:37 +0000 (09:25 +0000)]
Change ProcessInfo pids -> ProcessInfo process_info.
The former name was too generic.