I was thinking about some improvement in replication mechanism. Our application do only few writes (mostly reads), but those writes are important for us - objects rating, profile modifications. So in current implementation when master node dies, there is only a chance to read data from slave and all writes fails.
I was thinking about special version of one master / one slave only cluster. The main idea is to take over master role by slave when original master dies. Now, after master is recovered it becomes slave and at startup, before serving any queries, it tries to catch up with current master.
The main problem with solution is to choose master when both nodes are down and we start whole cluster. One of possible solution is to choose the one with higher "transaction" or "log" number.
What do you guys think about this?