Bill Moran wmoran at potentialtech.com
Wed Aug 24 05:03:07 PDT 2011
Slony uses triggers.  You disabled the triggers, so Slony no longer works.
Even if you re-enable the triggers, information about what data changed
has been lost.

Got back and redo your steps but don't disable any triggers.

In response to marmu <mu at forsa.de>:
> 
> Hello guys,
> 
> yesterday I finally had slony replication working between two DBs on one
> server. To this point in time I only had imported the globals and the
> structure of the DBs. When I inserted a row in a table which is part of a
> replication set it was immediately replicated. Then I thought it is time for
> the next step: importing the (old) data backed up before.
> 
> At first I stopped the slons and disables all triggers in my DBs. After I
> imported the data into both DBs the replication doesn't work anymore. Of
> course I got some errors while importing data into the slave, since tables
> are taking part in the replication:
> "Table xxxxxxx is replicated and cannot be modified on a subscriber node -
> role=0"
> 
> I thought, ok, I will have to import the data of the master-DB first and
> then let slony replicate to the slave. But this didn't work. No replication
> taking place and no errors in the slony logs.
> 
> The sl_status table in the master-DB is empty (0 rows), the sl_status table
> in the slave-DB contains the following row (1 row, formatted for better
> display):
>  st_origin = 2 | st_received = 1 | st_last_event = 5002159114 |
>  st_last_event_ts = 2011-08-24 12:31:37.56454 | st_last_received =
> 5002159114 |
>  st_last_received_ts = 2011-08-24 12:31:38.598021 | 
>  st_last_received_event_ts = 2011-08-24 12:31:37.56454 | st_lag_num_events =
> 0 |
>  st_lag_time = 00:16:24.21951
> 
> Any hints on why the replication won't work after importing data would be
> great. Further what would be the correct sequence of actions for moving 2
> DBs from one server to a new one (new postgres and slony versions).
> 
> This is what I did:
> 1) export
>     1.1) export globals
>     1.2) export structure
>     1.3) export data
> 2) import globals and structure
> 3) get slony working (replication was tested at this point and worked)
> 4) stop all slons (like "/etc/init.d/slony-slave stop" and
> "/etc/init.d/slony-master stop")
> 5) disable all triggers (in our case some calculations based on the data are
> taking place, but that is only needed while in production - so I could have
> skipped this for now, but not in the future)
> 6) import the data (which was dumped before)
> 
> Thanks for your time, thoughts and help in advance.

-- 
Bill Moran
http://www.potentialtech.com
http://people.collaborativefusion.com/~wmoran/


More information about the Slony1-general mailing list