|
Home > Archive > Slony1 PostgreSQL Replication > June 2005 > Slave questions
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
|
|
| John Surnow 2005-06-22, 7:24 am |
|
Why does each slave node communicate with every other slave node?
What will happen if a slave node is down for a long time?
Thanks,
John Surnow
Senior Software Engineer
Jigsaw Data Corp.
| |
| Andrew Sullivan 2005-06-22, 9:24 am |
| On Fri, Jun 17, 2005 at 11:59:14AM -0700, John Surnow wrote:
> Why does each slave node communicate with every other slave node?
First, it is in general a mistake to think of "nodes" as "slaves".
There is no role, "master" or "slave"; only origins, subcribers, and
providers.
The short answer to the question is "that's what makes it work",
especially for "switchover", "failover", MOVE SET, and other such
values of 'it'.
A longer answer is that a table can _originate_ on only one node, but
more than one node can be a _provider_ for that table for other
systems. So every system needs to be able to find out what is
happening on every other system. (It is not strictly speaking true
that every node must communicate with _every_ other node; it's
possible to set things up in a very complicated way such that certain
nodes only get their information from certain other nodes. Chris
Browne has an example of this, I think.)
The longest answer is that to understand this, you should read the
design document. It's on the web site.
> What will happen if a slave node is down for a long time?
You need to define "a long time". It's largely dependent on traffic.
A
--
Andrew Sullivan | ajs-oaT0K0jot5/q2IAV+ODieA@public.gmane.org
The fact that technology doesn't work is no bar to success in the marketplace.
--Philip Greenspun
| |
| Jan Wieck 2005-06-22, 9:24 am |
| On 6/17/2005 2:59 PM, John Surnow wrote:
>
>
> Why does each slave node communicate with every other slave node?
Because there are no "slave nodes" to begin with. Slony-I consists of a
network of equal nodes, all communicating with each other in a sort of
reliable message passing system implemented using PostgreSQL. While at
it, they can also exchange information about changes that happened to
user tables. So what you call replication is basically a usefull side
effect in the Slony-I case.
In the upcoming version 1.1 you will have the ability to have additional
offline leaf nodes via log shipping. Those do not run a slon daemon and
are not even known in the replication cluster configuration.
>
>
>
> What will happen if a slave node is down for a long time?
"Long time" depends mainly on the update activity and sync frequency of
your database. That said, all messages and all data change information
(replication log) will pile up. There will be a point where the
administrator should decide that it is "cheaper" to abandon the node,
throw away the piled up log data (by dropping the node from the
configuration) and rebuild it from scratch when it comes back to life.
Jan
--
#===================
====================
====================
===========#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#===================
====================
=========== JanWieck- bwPqjjyvM7QAvxtiuMwx
3w@public.gmane.org #
|
|
|
|
|