Richard Yen dba at richyen.com
Tue Apr 17 14:03:43 PDT 2007
Hi all,

Quick little tip here.  I've noticed that on postgres versions 8.1  
and up, the autovacuum feature can somewhat conflict with slony-I.

In the past, I've noticed that during random times in the day, and  
depending on machine hardware specs, slony would begin to build up a  
lag which peaks at around 20 sec, and then suddenly disappear.  It  
was pretty annoying because I'd get paged whenever the lag crosses a  
10-second threshold (company "policy" states this as a service  
degradation).

Just a couple weeks ago, I checked out my logs, and found that the  
autovacuum cycles often coincided with the "slony lagging" pages, and  
thought I'd try to do something about it.  I decided to put entries  
into pg_autovacuum with the 'enabled' column set to 'f'.  These  
entries were *all* the tables in the slony schema (the ones that  
begin with _schema.sl_*).

I figured that since I've already set the cleanup cycles in the slon  
daemon, 1) it's pointless to vacuum twice, 2) slony is responsible  
enough to do its own vacuuming, and 3) when slony decides to vacuum,  
it won't contend with itself for table access.

All the "slony lagging" pages have stopped now (I still get one every  
night when a resource-hogging cronjob runs every night).  So, I guess  
it was indeed some sort of contention between the postgres autovacuum  
and the slon daemon.

Just thought I'd throw this out in case anyone would need this info,  
or perhaps provide some further input.

--Richard


More information about the Slony1-general mailing list