Christopher Browne cbbrowne at ca.afilias.info
Fri Nov 27 13:03:32 PST 2009
Brad Nicholson <bnichols at ca.afilias.info> writes:
> On Thu, 2009-11-26 at 10:26 +0100, Laurent Laborde wrote:
>> On Wed, Nov 25, 2009 at 2:33 PM, Brad Nicholson
>> <bnichols at ca.afilias.info> wrote:
>> > On Wed, 2009-11-25 at 09:33 +0100, Laurent Laborde wrote:
>> >> On Mon, Nov 23, 2009 at 5:37 PM, Brad Nicholson
>> >> <bnichols at ca.afilias.info> wrote:
>> >> >
>> >> > If the vacuums are running, do you have a lot of long running
>> >> > transactions against this database?
>> >>
>> >> nope :)
>> >
>> > -Did you disable vacuums in the slon?
>> > -Do you have autovacuum enabled?  If so, post your autovac settings.
>> > -If autovac is on, did you tell it to not process pg_listener?
>> > -do you have appropriate logging set so the vacuums (either slon
>> > triggers or autovac) will be logged?
>> 
>> I can't find a correct documentation about *how* to activate "vacuum
>> from slony".
>
> It is on by default - controlled by the slon.  Unless you turned it off,
> it is running.

Indeed.  (With a caveat...)

>> If i understand correctly, just disabling the autovacuum on thoses
>> tables should active the slony vacuum on them ?
>
> No.  the Slon vacuum has nothing to do with autovacuum.

"Nothing" is possibly a bit too strong a word, as there is an
interaction between the Slony vacuum regimen and that of autovacuum.

The slon vacuum thread *does* peek in on autovacuum data, and if
autovacuum is on, the vacuum thread will leave out those tables managed
by autovacuum.

That's true in both 1.2 and 2.0.  The logic is a fair bit cleaner and
smarter in 2.0.  (Actually, it's mostly *simpler* in 2.0!)

The logic, even in Slony-I 1.2, is smart enough to know if there are
tables you explicitly told autovac NOT to manage.

The overall result should be reasonably robust...

 - If you aren't running autovac, Slony-I will be vacuuming tables every
   ~10 minutes via the cleanup thread

 - If you *are* running autovac, then autovac "takes up the slack."

 - You *could* tell autovac to leave the tables for Slony-I, if you
   prefer.

Pre-8.3, I'd actually tend to recommend leaving vacuuming to Slony-I,
because the autovac logic was somewhat flawed.  (Nothing fundamentally
horrible - just that it was in its early days, and there were cases
where it wouldn't be robust enough for important systems.)

As of 8.3+, I'd commend turning on the autovac service (it became a
default behaviour at that point).  When you do that, Slony-I will
automatically step back and leave the vacuuming to autovac.  

No muss (the point of automatically vacuuming ;-)), no fuss.
-- 
"cbbrowne","@","ca.afilias.info"
Christopher Browne
"Bother,"  said Pooh,  "Eeyore, ready  two photon  torpedoes  and lock
phasers on the Heffalump, Piglet, meet me in transporter room three"


More information about the Slony1-general mailing list