nathanmarz/storm-mesos — pull request #5 by jasonjckn (2013-03-25 04:37:18+00:00)
Title: MesosNimbus locks in executor URI of newly launched topologies

Previously if you accidentally had supervisors die, or new assignments, and you changed executor URI path, or overwrote the file that it points to, topologies would run on split versions and you'd never know with certainty which version of storm-mesos-0.0.1 a topology was using.

The new model is immutable for the lifetime of the topology. an executor URI is chosen when a topology is first launch and this setting is permanent until the topology is resubmitted. the URI state is kept in zookeeper. If you change mesos.executor.uri.default, then only newly launched topologies will use this value. I've also added mesos.executor.uri.overrides which overrides the default value, this allows you to gradually release version to users at your discretion, and you can slowly roll out your updates.
In this new model, whenever you do a new release of storm-mesos you place it at a new location, with a new URI. If you do an in-place update, then the behaviour is as it was before this patch.