From: | Magnus Hagander <magnus(at)hagander(dot)net> |
---|---|
To: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Josh Berkus <josh(at)agliodbs(dot)com>, Itagaki Takahiro <itagaki(dot)takahiro(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: system views for walsender activity |
Date: | 2011-01-11 12:04:12 |
Message-ID: | AANLkTikfYQfDJTHe4HJoDpMi+83FYd6+b0kAYqhjhmtO@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Jan 11, 2011 at 12:58, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On Tue, 2011-01-11 at 12:41 +0100, Magnus Hagander wrote:
>
>> Just to be clear, you're objecting to the *name* of the state, right,
>> not how/where it's set?
>
> Yes
>
>> In particular, how the catchup/streaming
>> things are set?
>
> You've set it in the right places.
>
> I would personally constrain the state transitions, so that we can't
> ever make illegal changes, such as CATCHUP -> BACKUP.
Well, once we enter the walsender loop we can never get out of it, so
it simply cannot happen...
> I would also check the state locally before grabbing the spinlock, as is
> typical in other xlog code. Continually resetting shared state to
> exactly what it is already seems strange, to me. If we make the rule
> that the state can only be changed by the WALSender itself, it won't
> need to grab spinlock. If you don't like that, a local variable works.
Hmm. I don't see why anybody other than the walsender should change
it, so yeah. You mean I can just drop the spinlock calls completely,
and then do an
if (walsnd->state != state)
walsnd->state = state;
? Do I need to keep the volatile pointer, or should I drop that as well?
> Also, mixing upper camel case and uppercase for the STATe NamES looKS
> weIRD. Uppercase makes them look more clearly like enum/states as used
> elsewhere in similar code.
Yeah, I'll change that.
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Noah Misch | 2011-01-11 12:14:33 | Re: ALTER TYPE 0: Introduction; test cases |
Previous Message | Anssi Kääriäinen | 2011-01-11 12:00:49 | Re: SSI patch version 8 |