On Nov 30, 2009, at 2:32 AM, Christian Hofstaedtler wrote: >> With the 'retry' functionality in ruby, the caller never knows of a >> problem unless none of the servers work. You pick a new server, >> reconnect, and keep going. I can't think of anything that would >> reasonably restart the whole run itself. > > I had a simpler mechanism in mind: > > Do the server selection only once per run. See if it "works" or > outright fails, and then stick to this server. *** > > If the server fails in the middle of the current run, you get a > failed run, and the next one will (hopefully) work again. > > This way you also don't need to worry _that much_ that all manifests > and files are completely in sync across all servers _all the time_ - > which is another problem not easily solved. > > > *** If there is an "intelligent" node manager in between, the server > selection is done twice, in this order: > > * client picks an initial server to talk to (FT) > * client asks this server (which is really the node manager), whom > to talk to (LB) > * client sends facts to this server (and sticks to it 'til the > end/failure of the run)
I actually think that'd be more complicated, but then, I haven't gotten around to trying to write it yet. -- I never did give anybody hell. I just told the truth, and they thought it was hell. -- Harry S Truman --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com -- You received this message because you are subscribed to the Google Groups "Puppet 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/puppet-dev?hl=en.
