On Thu, Dec 9, 2010 at 11:45 AM, Russell Keith-Magee <[email protected]> wrote: > > During the original multi-db design process, we considered allowing > for the definition of dependencies, but abandoned the idea because of > the complexity required to get automated synchronization correct in > every case. For example, a master/slave setup only requires syncdb to > be run on the master -- how do you declare this in DATABASES? What > about multi-master configurations? Sharded configurations? >
Hi Russ I just wanted to give you a customer viewpoint of how we deal with this. I currently run a production SSO solution for a global enterprise that is built around django, and use multi master replication to have replicas in different data centres around the world, with slave db servers in each location for reads, all built around django's multi db support. When we have schema changes, we have a complicated sequence of moving requests to a single data centre, halting DB replication from the inactive data centre. We then update the schema on the inactive master, re-activate replication, and move requests to the previously inactive DC. We then run syncdb against one of the masters, in order to add non schema changes (eg, adding a new ContentType). This is a complex procedure, and we don't expect django to do this automagically. We're quite happy with the tools django gives us, like SQL generation for our migrations, etc. Cheers Tom -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.
