Hi Liviu, I like your suggestion. It seems like a pragmatic solution so I welcome this idea. The X second delay is probably unavoidable, but could there be a problem if new registration requests arrive during the delay period?
I already have an X second delay because my current work-around is to launch a background script just before starting OpenSIPS. The background script has an X second delay then it runs "opensipsctl fifo ul_cluster_sync" and then exits. For backward compatibility, perhaps the default behaviour should be the same as it is now. John Quick Smartvox Limited > Happy New Year John, Alexey and everyone else! > > I just finished catching up with this thread, and I must admit that I now > concur with John's distaste of the asymmetric nature of cluster node restarts! > > Although it is correct and gets the job done, the 2.4 "seed" mechanism forces > the admin to conditionally add a "opensipsctl fifo ul_cluster_sync" command > into the startup script of all "seed" nodes. I think we can do better :) > > What if we kept the "seed" concept, but tweaked it such that instead of > meaning: > "following a restart, always start in 'synced' state, with an empty dataset" > > ... it would now mean: > "following a restart or cluster sync command, fall back to a 'synced' state, > with an empty dataset if and only if we are unable to find a suitable sync > candidate within X seconds" > > This solution seems to fit all requirements that I've seen posted so far. It is: > > * correct (a cluster with at least 1 "seed" node will still never deadlock) > * symmetric (with the exception of cluster bootstrapping, all node restarts are identical) > * autonomous (users need not even know about "ul_cluster_sync" anymore! > Not saying this is necessarily good, but it brings down the learning curve) > > The only downside could be that any cluster bootstrap will now last at > least X seconds. > But that seems such a rare event (in production, at least) that we need > not worry about it. Furthermore, the X seconds will be configurable. > > What do you think? > > PS: by "cluster bootstrap" I mean (re)starting all nodes simultaneously. > > Best regards, > > Liviu Chircu > OpenSIPS Developer > http://www.opensips-solutions.com _______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
