[Bucardo-general] Alternative to onetimecopy with bucardo 5.1.2
sym39
marechal.sylvain2 at gmail.com
Fri Jan 9 11:01:29 UTC 2015
Hello all,
Here my configuration :
-One machine "A" with one database that already have data, some clients
regularly fill the database
-Another machine "B" with the same database schema, all tables empty,
nobody fills the database
The database is quite simple : few tables with sequences.
-some tables are regularly updated each second with new lines of data.
So those tables become big (at least 10 millions more lines per month)
-other tables contains only metadata that may vary during the time, but
not too often
What I am trying to do is :
1. To initialize machine "B" with "A", when machine "B" can be
assimilated as slave, and "A" as master (As said above, nobody tries to
add lines to it when A is up, only A database is filled by the clients)
2. To make sure I can change role, ie, if machine A fails, machine B
becomes the master and is filled with data, and when machine A is up (so
it is the slave and B stay master) and there should be no gap in A
databases (especially for big tables)
To do this, I though I could create a sync with database A and B as
"source" and set the conflict_strategy of the sync to onetimecopy. But
initial data is not filled, most probably because of the issue described
here : https://github.com/bucardo/bucardo/issues/37 "onetime Does Not
Work in 4.99.6 #37 "
So what is the best work around with the current version of bucardo to
fill the initial data?
I was thinking of initially setting machine "B" as "target", then
updating the role of the database to "source" and reloading the sync
when the initial data has been copied to B.
-Is that what I should do?
-Should I wait "some time" before changing the B db role from "target"
to "source"?
-If yes to previous question, how can I monitor the initial copy is
complete? By checking the bucardo sync status is "Good"?
-Not really related - Should I create some specific sync for "big"
tables, or is it better to have only one sync for all tables? I saw that
having only one sync for all tables avoid tables to be filled when a
conflict is detected (may be more about automatic conflicts resolution
in another post ...)
Thanks and Regards,
Sylvain
More information about the Bucardo-general
mailing list