[PATCH conductor 0/2] #786844 - Reporting on deleted instances (v2)

Matt Wagner matt.wagner at redhat.com
Mon Feb 13 19:19:15 UTC 2012


This is a resend to address a problem Martyn and I discovered occurring in certain conditions.

The gist of the patch is this -- if an instance is removed from the cloud provider bypassing Conductor, we would just leave the instance in its existing state, which was about the worst thing we could do. This usually manifested itself as an instance that we claimed was running just fine when, in actuality, it had failed and been removed from the back-end provider.

This resend fixes a logic flaw discovered in destroy_on_provider, and also skips running destroy_on_provider when an instance is in STATE_VANISHED, since it doesn't make a whole lot of sense to try to delete something that disappeared.

Two possible idiosyncracies I welcome feedback on:

- The event association is :dependent => :destroy, so we end up deleting the event when the instance is destroyed. I'm not sure this is catastrophic since deleting the instance is really more of a stopgap solution, and long-term we've talked about leaving it in 'vanished' state.

- We delete the instance, but not its deployment. This permits a state where you can have no instances. I'm kind of weighing how much to do here -- we could destroy the deployment if all of its instances are destroyed, but, again, we don't plan on deleting instances long-term -- we plan on setting them to a special state. So for now I've left it as-is, but I could easily be swayed.

-- Matt



More information about the aeolus-devel mailing list