Activity log for bug #2011927

Date Who What changed Old value New value Message
2023-03-16 19:45:35 Corey Bryant bug added bug
2023-03-16 19:45:54 Corey Bryant description ovn-chassis workload status lists deferred events for another charm that is deployed on the same machine (in this case neutron-openvswitch): Unit Workload Agent Machine Public address Message nova-compute/0* active idle 8 10.5.3.226 Unit is ready neutron-openvswitch/1 maintenance idle 10.5.3.226 Paused. Use 'resume' action to resume normal service. ovn-chassis/1 active idle 10.5.3.226 Services queued for stop: ovs-record-hostname.service, ovs-vswitchd.service, ovsdb-server.service where: ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ ls charm-neutron-openvswitch-2d250424-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d36e1b2-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d49221e-c3fa-11ed-b824-a369432994da.deferred ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ cat * action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovsdb-server.service timestamp: 1678971478 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-vswitchd.service timestamp: 1678971479 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-record-hostname.service timestamp: 1678971479 charm-helpers code: get_deferred_events() # charmhelpers/contrib/openstack/files/check_deferred_restarts.py This gets all deferred files regardless of file name including service: 52 deferred_events_files = glob.glob( 53 '{}/*.deferred'.format(DEFERRED_EVENTS_DIR)) which is probably find since the contents of the files contains the service name: 37 { 38 action: restart, 39 policy_requestor_name: rabbitmq-server, 40 policy_requestor_type: charm, 41 reason: 'Pkg update', 42 service: rabbitmq-server, 43 time: 1614328743 44 } This can probably be fixed in custom_assess_status_check() in lib/charms/ovn_charm.py by updating the events dict *only* with deferred events that match the ovn-chassis service: 132 def custom_assess_status_check(self): 133 """Report deferred events in charm status message.""" 134 state = None 135 message = None 136 deferred_events.check_restart_timestamps() 137 events = collections.defaultdict(set) 138 for e in deferred_events.get_deferred_events(): # add a check here 139 events[e.action].add(e.service) ovn-chassis workload status lists deferred events for another charm that is deployed on the same machine (in this case neutron-openvswitch): Unit Workload Agent Machine Public address Message nova-compute/0* active idle 8 10.5.3.226 Unit is ready   neutron-openvswitch/1 maintenance idle 10.5.3.226 Paused. Use 'resume' action to resume normal service.   ovn-chassis/1 active idle 10.5.3.226 Services queued for stop: ovs-record-hostname.service, ovs-vswitchd.service, ovsdb-server.service where: ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ ls charm-neutron-openvswitch-2d250424-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d36e1b2-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d49221e-c3fa-11ed-b824-a369432994da.deferred ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ cat * action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovsdb-server.service timestamp: 1678971478 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-vswitchd.service timestamp: 1678971479 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-record-hostname.service timestamp: 1678971479 charm-helpers code: get_deferred_events() # charmhelpers/contrib/openstack/files/check_deferred_restarts.py This gets all deferred files regardless of file name including service:   52 deferred_events_files = glob.glob(   53 '{}/*.deferred'.format(DEFERRED_EVENTS_DIR)) which is probably find since the contents of the files contains the service name:   37 {   38 action: restart,   39 policy_requestor_name: rabbitmq-server,   40 policy_requestor_type: charm,   41 reason: 'Pkg update',   42 service: rabbitmq-server,   43 time: 1614328743   44 } This can probably be fixed in custom_assess_status_check() in lib/charms/ovn_charm.py by updating the events dict *only* with deferred events that match the ovn-chassis service:  132 def custom_assess_status_check(self):  133 """Report deferred events in charm status message."""  134 state = None  135 message = None  136 deferred_events.check_restart_timestamps()  137 events = collections.defaultdict(set)  138 for e in deferred_events.get_deferred_events():                  # add a check here  139 events[e.action].add(e.service)
2023-03-16 20:00:07 Corey Bryant description ovn-chassis workload status lists deferred events for another charm that is deployed on the same machine (in this case neutron-openvswitch): Unit Workload Agent Machine Public address Message nova-compute/0* active idle 8 10.5.3.226 Unit is ready   neutron-openvswitch/1 maintenance idle 10.5.3.226 Paused. Use 'resume' action to resume normal service.   ovn-chassis/1 active idle 10.5.3.226 Services queued for stop: ovs-record-hostname.service, ovs-vswitchd.service, ovsdb-server.service where: ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ ls charm-neutron-openvswitch-2d250424-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d36e1b2-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d49221e-c3fa-11ed-b824-a369432994da.deferred ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ cat * action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovsdb-server.service timestamp: 1678971478 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-vswitchd.service timestamp: 1678971479 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-record-hostname.service timestamp: 1678971479 charm-helpers code: get_deferred_events() # charmhelpers/contrib/openstack/files/check_deferred_restarts.py This gets all deferred files regardless of file name including service:   52 deferred_events_files = glob.glob(   53 '{}/*.deferred'.format(DEFERRED_EVENTS_DIR)) which is probably find since the contents of the files contains the service name:   37 {   38 action: restart,   39 policy_requestor_name: rabbitmq-server,   40 policy_requestor_type: charm,   41 reason: 'Pkg update',   42 service: rabbitmq-server,   43 time: 1614328743   44 } This can probably be fixed in custom_assess_status_check() in lib/charms/ovn_charm.py by updating the events dict *only* with deferred events that match the ovn-chassis service:  132 def custom_assess_status_check(self):  133 """Report deferred events in charm status message."""  134 state = None  135 message = None  136 deferred_events.check_restart_timestamps()  137 events = collections.defaultdict(set)  138 for e in deferred_events.get_deferred_events():                  # add a check here  139 events[e.action].add(e.service) This was detected in gate tests for: https://review.opendev.org/c/openstack/charm-neutron-openvswitch/+/873819 ovn-chassis workload status lists deferred events for another charm that is deployed on the same machine (in this case neutron-openvswitch): Unit Workload Agent Machine Public address Message nova-compute/0* active idle 8 10.5.3.226 Unit is ready   neutron-openvswitch/1 maintenance idle 10.5.3.226 Paused. Use 'resume' action to resume normal service.   ovn-chassis/1 active idle 10.5.3.226 Services queued for stop: ovs-record-hostname.service, ovs-vswitchd.service, ovsdb-server.service where: ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ ls charm-neutron-openvswitch-2d250424-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d36e1b2-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d49221e-c3fa-11ed-b824-a369432994da.deferred ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ cat * action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovsdb-server.service timestamp: 1678971478 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-vswitchd.service timestamp: 1678971479 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-record-hostname.service timestamp: 1678971479 charm-helpers code: get_deferred_events() # charmhelpers/contrib/openstack/files/check_deferred_restarts.py This gets all deferred files regardless of file name including service:   52 deferred_events_files = glob.glob(   53 '{}/*.deferred'.format(DEFERRED_EVENTS_DIR)) which is probably find since the contents of the files contains the service name:   37 {   38 action: restart,   39 policy_requestor_name: rabbitmq-server,   40 policy_requestor_type: charm,   41 reason: 'Pkg update',   42 service: rabbitmq-server,   43 time: 1614328743   44 } This can probably be fixed in custom_assess_status_check() in lib/charms/ovn_charm.py by updating the events dict *only* with deferred events that match the ovn-chassis service:  132 def custom_assess_status_check(self):  133 """Report deferred events in charm status message."""  134 state = None  135 message = None  136 deferred_events.check_restart_timestamps()  137 events = collections.defaultdict(set)  138 for e in deferred_events.get_deferred_events():                  # add a check here  139 events[e.action].add(e.service)
2023-03-16 20:27:50 Corey Bryant description This was detected in gate tests for: https://review.opendev.org/c/openstack/charm-neutron-openvswitch/+/873819 ovn-chassis workload status lists deferred events for another charm that is deployed on the same machine (in this case neutron-openvswitch): Unit Workload Agent Machine Public address Message nova-compute/0* active idle 8 10.5.3.226 Unit is ready   neutron-openvswitch/1 maintenance idle 10.5.3.226 Paused. Use 'resume' action to resume normal service.   ovn-chassis/1 active idle 10.5.3.226 Services queued for stop: ovs-record-hostname.service, ovs-vswitchd.service, ovsdb-server.service where: ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ ls charm-neutron-openvswitch-2d250424-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d36e1b2-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d49221e-c3fa-11ed-b824-a369432994da.deferred ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ cat * action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovsdb-server.service timestamp: 1678971478 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-vswitchd.service timestamp: 1678971479 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-record-hostname.service timestamp: 1678971479 charm-helpers code: get_deferred_events() # charmhelpers/contrib/openstack/files/check_deferred_restarts.py This gets all deferred files regardless of file name including service:   52 deferred_events_files = glob.glob(   53 '{}/*.deferred'.format(DEFERRED_EVENTS_DIR)) which is probably find since the contents of the files contains the service name:   37 {   38 action: restart,   39 policy_requestor_name: rabbitmq-server,   40 policy_requestor_type: charm,   41 reason: 'Pkg update',   42 service: rabbitmq-server,   43 time: 1614328743   44 } This can probably be fixed in custom_assess_status_check() in lib/charms/ovn_charm.py by updating the events dict *only* with deferred events that match the ovn-chassis service:  132 def custom_assess_status_check(self):  133 """Report deferred events in charm status message."""  134 state = None  135 message = None  136 deferred_events.check_restart_timestamps()  137 events = collections.defaultdict(set)  138 for e in deferred_events.get_deferred_events():                  # add a check here  139 events[e.action].add(e.service) This was detected in gate tests for: https://review.opendev.org/c/openstack/charm-neutron-openvswitch/+/873819 ovn-chassis workload status lists deferred events for another charm that is deployed on the same machine (in this case neutron-openvswitch): Unit Workload Agent Machine Public address Message nova-compute/0* active idle 8 10.5.3.226 Unit is ready   neutron-openvswitch/1 maintenance idle 10.5.3.226 Paused. Use 'resume' action to resume normal service.   ovn-chassis/1 active idle 10.5.3.226 Services queued for stop: ovs-record-hostname.service, ovs-vswitchd.service, ovsdb-server.service where: ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ ls charm-neutron-openvswitch-2d250424-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d36e1b2-c3fa-11ed-b824-a369432994da.deferred charm-neutron-openvswitch-2d49221e-c3fa-11ed-b824-a369432994da.deferred ubuntu@juju-2fd1c1-zaza-7b0a28b01698-8:/var/lib/policy-rc.d$ cat * action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovsdb-server.service timestamp: 1678971478 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-vswitchd.service timestamp: 1678971479 action: stop policy_requestor_name: neutron-openvswitch policy_requestor_type: charm reason: Package update service: ovs-record-hostname.service timestamp: 1678971479 charm-helpers code: get_deferred_events() # charmhelpers/contrib/openstack/files/check_deferred_restarts.py This gets all deferred files regardless of file name including service:   52 deferred_events_files = glob.glob(   53 '{}/*.deferred'.format(DEFERRED_EVENTS_DIR)) which is probably find since the contents of the files contains the service name:   37 {   38 action: restart,   39 policy_requestor_name: rabbitmq-server,   40 policy_requestor_type: charm,   41 reason: 'Pkg update',   42 service: rabbitmq-server,   43 time: 1614328743   44 } New: I proposed a fix in charm-helpers. Old: This can probably be fixed in custom_assess_status_check() in lib/charms/ovn_charm.py by updating the events dict *only* with deferred events that match the ovn-chassis service:  132 def custom_assess_status_check(self):  133 """Report deferred events in charm status message."""  134 state = None  135 message = None  136 deferred_events.check_restart_timestamps()  137 events = collections.defaultdict(set)  138 for e in deferred_events.get_deferred_events():                  # add a check here  139 events[e.action].add(e.service)