Hi All,

In order to prevent race conditions due to multiple conductors, my solution
is as blew:
1. remove the db operation in bay_update to prevent race conditions.Stack
operation is atomic. Db operation is atomic. But the two operations
together are not atomic.So the data in the db may be wrong.
2. sync up stack status and stack parameters(now only node_count) from heat
by periodic tasks. bay_update can change stack parameters, so we need to
sync up them.
3. remove heat poller, because we have periodic tasks.

To sync up stack parameters from heat, we need to show stacks using
admin_context. But heat don't allow to show stacks in other tenant. If we
want to show stacks in other tenant, we need to store auth context for
every bay. That is a problem. Even if we store the auth context, there is a
timeout for token. The best way I think is to let heat allow admin user to
show stacks in other tenant.

Do you have a better solution or any improvement for my solution?

Regards,
Wanghua
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to