Regression in `goal-state` output, individual related unit status no longer listed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Fix Released
|
High
|
Ian Booth | ||
2.4 |
Fix Released
|
High
|
Ian Booth |
Bug Description
When juju 2.4.0 was released the output from the `goal-state` hook tool looked something like this:
$ juju run --unit keystone/0 goal-state
units:
keystone/0:
status: active
since: 2018-09-27 11:26:39Z
relations:
identity-service:
glance/0:
status: active
since: 2018-09-27 11:27:19Z
glance/1:
status: active
since: 2018-09-27 11:27:34Z
glance/2:
status: active
since: 2018-09-27 11:27:55Z
glance/3:
status: active
since: 2018-09-27 11:27:28Z
glance/4:
status: waiting
since: 2018-09-27 11:29:42Z
keystone/0:
status: active
since: 2018-09-27 11:26:39Z
shared-db:
keystone/0:
status: active
since: 2018-09-27 11:26:39Z
mysql/0:
status: active
since: 2018-09-27 11:13:29Z
In recent versions of juju the same deployment looks like this:
$ juju run --unit keystone/0 goal-state
units:
keystone/0:
status: active
since: 2018-09-27 11:38:28Z
relations:
identity-service:
glance:
status: joined
since: 2018-09-27 11:37:16Z
keystone:
status: joined
since: 2018-09-27 11:37:16Z
shared-db:
keystone:
status: joined
since: 2018-09-27 11:34:26Z
mysql:
status: joined
since: 2018-09-27 11:34:26Z
There are a few data points we have lost in this regression:
- We no longer know the number of units that will join a given relation.
- The status of `joined` is printed regardless of all units having completed joining the relation or not where as previously we could quickly query each individual units status.
For charms that are both clustered and are related to many units, such as the `keystone`, `percona-cluster` and `rabbitmq-server` charms having the above mentioned data is invaluable. These charms have to do a fair bit of per-unit relation housekeeping based on changes to their cluster relation and based on changes to their dependencies (for example full completion of the shared-db relation).
What is the reason for the change and is there a way for us to get the old behavior back?
Changed in juju: | |
assignee: | nobody → Ian Booth (wallyworld) |
status: | Triaged → Fix Committed |
Changed in juju: | |
status: | Fix Committed → Fix Released |
When you say "recent versions" can you be more specific to help us chase down the changes? Is this the edge snap of 2.5 in dev or from 2.4.0 to recent 2.4.3?