From:
Bruce Momjian <bruce(at)momjian(dot)us>
To:
Greg Stark <gsstark(at)mit(dot)edu>
Cc:
Josh Berkus <josh(at)agliodbs(dot)com>, Greg Smith <greg(at)2ndquadrant(dot)com>,
PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject:
Re: Re: Hot Standby query cancellation and
Streaming Replication integration
Date:
2010-03-02 21:36:52
Message-ID:
201003022136.o22LaqT29573@momjian.us (view raw or flat )
Thread:
2010-02-26 08:33:35 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-26 12:10:07 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-26 18:53:16 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-02-26 19:01:30 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-26 19:06:51 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-26 19:16:40 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-02-26 20:02:08 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-26 20:22:56 from "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>
2010-02-26 20:04:23 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-26 20:21:05 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-02-26 20:10:11 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-26 20:25:33 from Aidan Van Dyk <aidan(at)highrise(dot)ca>
2010-02-26 20:30:01 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-02-26 21:06:10 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-26 21:11:32 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-26 21:19:39 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-02-26 21:22:47 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-26 21:44:20 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-02-27 04:02:24 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-28 21:58:51 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
2010-02-27 06:53:24 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-26 21:39:12 from Dimitri Fontaine <dfontaine(at)hi-media(dot)com>
2010-02-26 21:48:38 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-26 22:11:28 from Dimitri Fontaine <dfontaine(at)hi-media(dot)com>
2010-02-26 22:20:37 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-27 09:07:32 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-27 09:33:34 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-26 23:56:55 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 00:36:57 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-27 02:43:58 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 03:40:57 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-27 04:38:38 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 04:53:48 from Aidan Van Dyk <aidan(at)highrise(dot)ca>
2010-02-27 05:08:35 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 20:31:06 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-27 22:09:59 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 22:26:22 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-28 02:14:28 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-28 05:28:17 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-28 06:01:49 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-28 06:18:00 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 00:43:48 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-27 01:53:13 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 02:30:56 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-27 03:11:49 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 22:28:49 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-27 23:49:09 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 03:59:41 from "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>
2010-02-27 04:31:12 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 14:34:08 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-26 23:33:57 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 00:21:11 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-27 06:59:10 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-27 14:56:51 from Tatsuo Ishii <ishii(at)postgresql(dot)org>
2010-02-28 01:00:52 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-02-28 06:07:20 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-28 13:54:48 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-28 15:56:28 from Joachim Wieland <joe(at)mcknight(dot)de>
2010-02-28 19:47:38 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-28 20:48:51 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-28 22:38:28 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-01 03:00:09 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-01 17:50:52 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-01 18:26:09 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-01 18:46:29 from Greg Stark <gsstark(at)mit(dot)edu>
2010-03-01 19:21:48 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-01 19:32:24 from Greg Stark <gsstark(at)mit(dot)edu>
2010-03-01 19:35:37 from Stefan Kaltenbrunner <stefan(at)kaltenbrunner(dot)cc>
2010-03-01 19:43:13 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-03-01 20:04:41 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-02 01:34:53 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-02 20:57:39 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
2010-03-02 20:58:03 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
2010-03-02 21:36:52 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-02 23:39:10 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-01 03:12:22 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-03-01 22:32:01 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-01 22:52:50 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-03-02 00:46:22 from Greg Stark <stark(at)mit(dot)edu>
2010-03-02 01:04:11 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-03-02 02:08:27 from Aidan Van Dyk <aidan(at)highrise(dot)ca>
2010-03-02 01:50:28 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-03-02 06:21:10 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-02 04:56:45 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-28 20:54:52 from Dimitri Fontaine <dfontaine(at)hi-media(dot)com>
2010-02-28 21:42:00 from Joachim Wieland <joe(at)mcknight(dot)de>
2010-02-28 20:21:23 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-02 04:54:04 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-02 05:50:08 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-02 18:30:15 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-02 18:34:33 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-02 20:11:00 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-03-02 23:44:16 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-10 06:29:19 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-10 11:38:12 from Greg Stark <gsstark(at)mit(dot)edu>
2010-03-10 18:59:50 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-11 00:51:29 from Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
2010-03-11 01:39:37 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-03-11 05:58:35 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-02 19:03:14 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-03-02 21:00:24 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
2010-02-26 14:10:26 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-26 14:24:30 from Richard Huxton <dev(at)archonet(dot)com>
2010-02-26 18:47:09 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-27 00:11:36 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 00:54:57 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-27 02:52:12 from Greg Smith <greg(at)2ndquadrant(dot)com>
2010-02-27 02:56:01 from Bruce Momjian <bruce(at)momjian(dot)us>
2010-02-26 14:17:23 from Richard Huxton <dev(at)archonet(dot)com>
2010-02-26 14:45:07 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-26 14:57:16 from Richard Huxton <dev(at)archonet(dot)com>
2010-02-26 15:21:03 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2010-02-26 17:45:33 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-02-26 19:02:12 from Josh Berkus <josh(at)agliodbs(dot)com>
2010-02-26 16:43:24 from Richard Huxton <dev(at)archonet(dot)com>
2010-02-26 17:46:15 from Greg Stark <gsstark(at)mit(dot)edu>
2010-02-28 22:15:18 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
Lists:
pgsql-hackers
Greg Stark wrote:
> On Mon, Mar 1, 2010 at 5:50 PM, Josh Berkus <josh(at)agliodbs(dot)com> wrote:
> > I don't think that defer_cleanup_age is a long-term solution. ?But we
> > need *a* solution which does not involve delaying 9.0.
>
> So I think the primary solution currently is to raise max_standby_age.
>
> However there is a concern with max_standby_age. If you set it to,
> say, 300s. Then run a 300s query on the slave which causes the slave
> to fall 299s behind. Now you start a new query on the slave -- it gets
> a snapshot based on the point in time that the slave is currently at.
> If it hits a conflict it will only have 1s to finish before the
> conflict causes the query to be cancelled.
>
> In short in the current setup I think there is no safe value of
> max_standby_age which will prevent query cancellations short of -1. If
> the slave has a constant stream of queries and always has at least one
> concurrent query running then it's possible that the slave will run
> continuously max_standby_age-epsilon behind the master and cancel
> queries left and right, regardless of how large max_standby_age is.
>
> To resolve this I think you would have to introduce some chance for
> the slave to catch up. Something like refusing to use a snapshot older
> than max_standby_age/2 and instead wait until the existing queries
> finish and the slave gets a chance to catch up and see a more recent
> snapshot. The problem is that this would result in very unpredictable
> and variable response times from the slave. A single long-lived query
> could cause replay to pause for a big chunk of max_standby_age and
> prevent any new query from starting.
That is a good point. I have added the attached documentation patch to
mention that max_standby_delay increases the master/slave inconsistency,
and not to use it for xid-keepalive connections.
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
PG East: http://www.enterprisedb.com/community/nav-pg-east-2010.do
Attachment: /rtmp/diff
Description: text/x-diff (2.4 KB)
In response to
pgsql-hackers by date
Next :From: Christopher BrowneDate: 2010-03-02 23:22:02
Subject : Re: caracara failing to bind to localhost?
Previous :From : Simon RiggsDate : 2010-03-02 21:00:24
Subject : Re: Re: Hot Standby query cancellation and Streaming
Replication integration