Hi, We have been trying to use cellar groups for our cluster deployments. The idea was to be able to deploy one bundle to only a subset of nodes, but actually we did not manage to make it work.
We created one single group, say groupA that contains 2 nodes, in addition to the default group, which contain all nodes. Both groups use the "cluster" configuration (pull / push), bundles can be handled by any group (no whitelist/blacklist), and no local listener is configured. Basically, when we deploy a module on groupA, the module is correctly installed on all nodes of this group, and everything goes fine. However, if a sync is done on the default group, the bundle will be immediately uninstalled, as the "pull" operation will see this bundle as local only (it's not in default group) and will uninstall it. On the other hand, if we deploy a module on default group, it's correctly installed everywhere, but the next sync of groupA will uninstall the bundle from the 2 nodes that it owns. Since sync are done automatically quite often, including at startup, some bundles can get unexpectedly uninstalled at any time. At startup, since all groups are syncing in a random order - the last group to sync will "win", so will reinstall bundles that were just uninstalled by the previous sync - but bundles only installed on other groups will be removed. We were thinking of different possible fixes for handling that ( maybe changing the sync, checking that the bundle is not part of any cluster group before uninstalling it or changing its state ), but it's actually not quite clear what is the expected behaviour and how it is supposed to work. Is there anything wrong in the way we are using groups ? Thomas
