Hello James, What would you do in the case where the network becomes partitioned? Say that a physical network link goes down and half the servers think that the original master server is down, while the other half are unaware that any problem has occurred. The worst thing you could do is elect a new master when it is not needed as Wave could not merge the changes held by multiple master servers.
Cheers, Dan On Jan 30, 5:50 am, James Purser <[email protected]> wrote: > On Sat, Jan 30, 2010 at 12:50 AM, Torben Weis <[email protected]> wrote: > > Hi, > > > clustering is of course a solution. > > > I was concerned about the case where the original wave master goes offline > > forever (i.e the domain no longer supports wave). > > Clustering works so long as there is an active network connection. If that > connection is cut then the master wave server is effectively dead for the > purposes of each hosted wave. > > Once that happens, we have two options: > > - Declare the hosted waves to be dead and Read Only > > or > > - Elect a new master > > The first solution is the easiest to develop, however it also introduces > pain to the user ("Dammit I have to start another wave!"). > > The second solution allows the collaboration to continue, but how do we > elect the new master? I was thinking about this last night and a couple of > ideas present. > > *Most complete history takes control* > * > * > In this case, the remaining wave servers in the conversation discover that > the master server is not responding. So they each send a summary of the > conversation history that they have to the others. The server with the most > complete history is then elected to be the new master (most likely creating > a new wave and automatically adding the participants and old wave content). > > In the case of a draw, simply have the remaining servers conduct a vote > between those with the most complete histories. The one with the most votes > wins. In case of a draw in the vote re-vote until one is selected. > > -- > James Purserhttp://wavingtheshiny.collaborynth.com.au > Wave Addresses: [email protected] > (wave.google.com)[email protected] > (wavesandbox.com)[email protected] (collaborynth.com.au FedOne > Server) > Skype: purserj1977 > GTalk: [email protected] -- You received this message because you are subscribed to the Google Groups "Wave Protocol" 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/wave-protocol?hl=en.
