From: Marko Kreen Date: Wed, 6 Aug 2008 06:43:40 +0000 (+0000) Subject: Remove drop_on_error, it was a bad idea. X-Git-Tag: pgbouncer_1_2_2~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0bed37caf3dab625f2ab0ea2a745311a0226e165;p=pgbouncer Remove drop_on_error, it was a bad idea. It was a workaround for broken plan-cache in Postgres, but it's behviour for common case - some queries giving always errors - is very nasty - it can drop all connections in pool. --- diff --git a/doc/config.txt b/doc/config.txt index e1def72..a91fab7 100644 --- a/doc/config.txt +++ b/doc/config.txt @@ -273,14 +273,6 @@ online restart. Default: 60 -==== drop_on_error ==== - -If error appears from server, the connection will not be reused but dropped -after client is finished with it. This allows to survive broken cached plans. -Set to 0 if errors from server are normal for your workflow. - -Default: 1 - === Dangerous timeouts === Setting following timeouts cause unexcpected errors. diff --git a/include/bouncer.h b/include/bouncer.h index e0d4be1..e398a26 100644 --- a/include/bouncer.h +++ b/include/bouncer.h @@ -327,7 +327,6 @@ extern char *cf_logfile; extern char *cf_pidfile; extern char *cf_ignore_startup_params; -extern int cf_drop_on_error; extern char *cf_admin_users; extern char *cf_stats_users; diff --git a/src/main.c b/src/main.c index 6ee1b7b..01a7e55 100644 --- a/src/main.c +++ b/src/main.c @@ -95,7 +95,6 @@ usec_t cf_server_check_delay = 30 * USEC; int cf_server_round_robin = 0; char *cf_ignore_startup_params = ""; -int cf_drop_on_error = 1; usec_t cf_server_lifetime = 60*60*USEC; usec_t cf_server_idle_timeout = 10*60*USEC; @@ -153,7 +152,6 @@ ConfElem bouncer_params[] = { {"server_round_robin", true, CF_INT, &cf_server_round_robin}, {"suspend_timeout", true, CF_TIME, &cf_suspend_timeout}, {"ignore_startup_parameters", true, CF_STR, &cf_ignore_startup_params}, -{"drop_on_error", true, CF_INT, &cf_drop_on_error}, {"pkt_buf", false, CF_INT, &cf_sbuf_len}, {"tcp_defer_accept", true, {cf_get_int, set_defer_accept}, &cf_tcp_defer_accept}, diff --git a/src/server.c b/src/server.c index e5637bb..5f75004 100644 --- a/src/server.c +++ b/src/server.c @@ -242,10 +242,6 @@ static bool handle_server_work(PgSocket *server, PktHdr *pkt) disconnect_server(server, true, "invalid server parameter"); return false; } - if (cf_drop_on_error && !server->close_needed) { - log_server_error("drop_on_error", pkt); - server->close_needed = 1; - } case 'N': /* NoticeResponse */ break;