Re: "Hot standby"?

From: Greg Stark <gsstark(at)mit(dot)edu>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Mark Mielke <mark(at)mark(dot)mielke(dot)cc>, Peter Eisentraut <peter_e(at)gmx(dot)net>, Bruce Momjian <bruce(at)momjian(dot)us>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: "Hot standby"?
Date: 2009-08-12 01:44:02
Message-ID: 407d949e0908111844o38f79a39h1d1efabb5362904e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Aug 11, 2009 at 10:13 PM, Robert Haas<robertmhaas(at)gmail(dot)com> wrote:
> On Tue, Aug 11, 2009 at 4:07 PM, Josh Berkus<josh(at)agliodbs(dot)com> wrote:
>> So really, the "streaming replication" patch should be called "hot
>> standby",
>
> No.  AIUI, hot standby means that when your primary falls over, the
> secondary automatically promotes itself and takes over.

No! This is *not* what "hot standby" means, at least not in the Oracle world.

The "hot" in "hot standby" is not a reference to the hot backups or
replication behaviour. It means to the fact that the server is able to
take queries. Ie, It's a living breathing server, not one in some kind
of half-alive state like a warm standby server.

Essentially "hot" vs "warm" versus uh, "plain old standby server"
refer to how alive the server is. A traditional standby server was a
machine which was available to take over after a restore. A warm
standby was one that was constantly replaying logs and could be given
life quickly. A hot standby was actually alive.

I think the term "warm standby" and "hot standby" were actually by
analogy to the older term "hot spare" which referred to a machine
which was on and hooked up and ready to go as opposed to one which was
in the cupboard and could be deployed after manual intervention.

>> and the "hot standby" patch should be called "read only slaves"?
>
> Yes.
>
>> And *why* can't we call it log-based replication?
>
> Well, we can call it anything we want.  For example, up until now
> we've been calling it "hot standby", even though that's clearly wrong.
> :-)

"log based replication", "read-only slaves", and "hot standby" are all
100% accurate descriptions of what the hot standby patch enables. I do
like "read only slaves" because it's the most precise and meaningful.

By comparison, it's not clear whether "log based replication" is what
we've had since 8.0 or whether it's multi-master read-write
replication. And "hot standby" is buzzwordy and depends on Oracle
experience to acquire any meaning.

When we have sync replication you'll also have to distinguish whether
the slave/standby/replica are sync slaves or async slaves and if
they're async what asynchronous mode they're in, streaming or
file-based. Using "hot" to describe those aspects would be horribly
confusing to Oracle users.

--
greg
http://mit.edu/~gsstark/resume.pdf

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2009-08-12 01:45:08 Re: dependencies for generated header files
Previous Message Andrew Dunstan 2009-08-12 01:42:50 Re: Re: pgindent timing (was Re: [COMMITTERS] pgsql: Refactor NUM_cache_remove calls in error report path to a PG_TRY)