Comment 3 for bug 2011662

Revision history for this message
Ian Booth (wallyworld) wrote :

Reopening this. It looks like newRemoteRelationsFacadeWithRedirect() is broken, unless I'm missing something.

Consider this scenario. Single controller c1, two models, offer and consume.
Migrate the consume model to a new controller c2.

The remote application worker on c2 calls newRemoteRelationsFacadeWithRedirect().
This calls ControllerAPIInfoForModel().

This first looks at external controllers and there are none and as expected a not found error results and is skipped.

Then it looks for a completed migration record, ostensibly so that the target controller address can be used. But this is the consuming model moved to a new controller and there is no migration record. So it all fails.

The current implementation supports migrating the offering model off the controller, since in the case the consuming model stays behind and has access to the migration record.

So we need to look at ensuring the target controller for a consuming model migration has the necessary info shipped across so that the original controller is known to the consuming model after it comes up on the target controller.