This repository has been archived on 2025-03-20. You can view files and clone it, but cannot push or open issues or pull requests.
sonic-buildimage/files/build_templates
Lawrence Lee dae5c4c930 [build_templates]: Start SNMP timer after SWSS service (#6195)
Fixes #5663

- Why I did it
It's currently possible for the SNMP timer to conflict with config reload (specifically if the timer triggers while config reload is stopping the SWSS service). config reload triggers SWSS to shutdown, which causes SNMP to shutdown, which conflicts with the SNMP timer causing SNMP to startup. See the linked issue for more details.

- How I did it
Including the After ordering dependency forces the SNMP timer to wait until SWSS finishes stopping, preventing the conflict. If there is an ordering dependency between two units (e.g. one unit is ordered After another), if one unit is shutting down while the other is starting up, the shutdown will always be ordered before the startup. In this case, that means that the SNMP timer is forced to wait for the SWSS shutdown to complete. Only then can the SNMP timer proceed. See here for more details.

It's important to note that the After dependency will not cause SWSS to be started when the SNMP timer fires (assuming that SWSS has not yet been started). The existing Requisite dependency in the SNMP service will also not cause SWSS to be started, instead it will cause the SNMP service to fail if SWSS is not active.

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2020-12-16 19:28:31 -08:00
..
per_namespace Multi-ASIC implementation (#3888) 2020-04-15 13:08:34 -07:00
buffers_config.j2 [buffers_config.j2]: Use correct cable lengths for backend devices (#5905) 2020-11-14 08:41:14 -08:00
config-setup.service.j2 [config-setup]: create a SONiC configuration management service (#3227) 2020-01-21 10:39:19 -08:00
database.service.j2 Multi-ASIC implementation (#3888) 2020-04-15 13:08:34 -07:00
dhcp_relay.service.j2 [services] Remove explicit dependencies from dhcp_relay service file, control in swss.sh (#3823) 2019-11-26 16:59:45 -08:00
docker_image_ctl.j2 [multi-asic] Fixed the docker mount point check for multi-asic (#5848) 2020-11-09 13:03:20 -08:00
init_cfg.json.j2 Enhanced Feature table to support 'always_enabled' value for state and auto-restart fields. (#6000) 2020-11-25 10:04:42 -08:00
lldp.service.j2 Changes for LLDP docker to support multi-npu platforms (#4530) 2020-05-20 07:51:49 -07:00
mgmt-framework.service.j2 [services][mgmt-framework] delay mgmt-framework service on boot (#5226) 2020-09-04 21:22:12 +00:00
mgmt-framework.timer [services][mgmt-framework] delay mgmt-framework service on boot (#5226) 2020-09-04 21:22:12 +00:00
nat.service.j2 [services] remove swss from WantedBy for nat service (#4991) 2020-07-26 11:11:35 -07:00
organization_extensions.sh Framework to plugin Organization specific scripts during ONIE Image build (#951) 2017-09-19 16:23:31 -07:00
pmon.service.j2 [Services] Restart Platform-monitor service upon unexpected critical process exit. (#3689) 2019-11-04 17:44:01 -08:00
process-reboot-cause.timer [reboot cause]: Delay process-reboot-cause service until network connection is stable (#4003) 2020-01-21 10:47:13 -08:00
qos_config.j2 Make backend device checking more robust (#5730) 2020-11-14 08:39:08 -08:00
radv.service.j2 [services] improve startup time by changing startup order (#3656) 2019-10-31 09:18:26 -07:00
restapi.service.j2 Start RestAPI container when sonic boots (#4140) 2020-02-24 10:16:02 -08:00
sflow.service.j2 [services] sflow service sets swss service as Requisite=, not Requires= (#3819) 2020-01-02 14:29:11 -08:00
snmp.service.j2 [services] make snmp.timer work again and delay telemetry.service (#3742) 2020-01-06 10:32:24 -08:00
snmp.timer [build_templates]: Start SNMP timer after SWSS service (#6195) 2020-12-16 19:28:31 -08:00
sonic_debian_extension.j2 [201911][Monit] Unmonitor processes in disabled containers (#5462) 2020-09-25 00:30:41 -07:00
telemetry.service.j2 [services] make snmp.timer work again and delay telemetry.service (#3742) 2020-01-06 10:32:24 -08:00
telemetry.timer [services] make snmp.timer work again and delay telemetry.service (#3742) 2020-01-06 10:32:24 -08:00
updategraph.service.j2 [config-setup]: create a SONiC configuration management service (#3227) 2020-01-21 10:39:19 -08:00