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
Vaibhav Hemant Dixit 2042f44d97
[202012] Fix fast-reboot issue where cold restart is performed due to missing FAST_REBOOT system flag (#16669)
### Why I did it

Fast reboot is failing on 202012 after PR https://github.com/sonic-net/sonic-buildimage/pull/15685 was cherrypicked to 202012 as part of https://github.com/sonic-net/sonic-buildimage/pull/16225

The master branch change is good, but the cherry pick to 202012 is bad.
Change was needed on master as the code added here was not effective (as it was unreachable) and not required (as fast-reboot on master uses warm-reboot infra of db dump and reconc).

However, this code was still being used in 202012, and should not have been removed. The DB flag needs to be set to allow services do fast recovery. In the latest 202012 images, fast reboot fails as syncd does cold restart:

Good case on 202012 (before PR 16225)
```
Sep 14 13:25:55.435266 str3-s6100-acs-6 NOTICE syncd#syncd: :- Syncd: command line:  
	EnableDiagShell=YES EnableTempView=YES DisableExitSleep=NO EnableUnittests=NO EnableConsistencyCheck=NO 
	EnableSyncMode=YES RedisCommunicationMode=redis_async EnableSaiBulkSuport=NO 
	StartType=fast               <----------------------
	ProfileMapFile=/etc/sai.d/sai.profile GlobalContext=0 ContextConfig= BreakConfig=/tmp/break_before_make_objects
```

Bad case on 202012 (after PR 16225)
```
Sep 22 22:00:19.619381 str-s6100-acs-2 NOTICE syncd#syncd: :- Syncd: command line:  
	EnableDiagShell=YES EnableTempView=YES DisableExitSleep=NO EnableUnittests=NO EnableConsistencyCheck=NO 
	EnableSyncMode=YES RedisCommunicationMode=redis_async EnableSaiBulkSuport=NO 
	StartType=cold               <----------------------
	ProfileMapFile=/etc/sai.d/sai.profile GlobalContext=0 ContextConfig= BreakConfig=/tmp/break_before_make_objects
```
##### Work item tracking
- Microsoft ADO **(number only)**: 25227065

#### How I did it

Set system flag for fast reboot during boot up path

#### How to verify it

Change restores the state as it was before PR 16225, and fast-reboot worked before 16225

Tested locally w/ the change by replacing database.sh on the device.
2023-09-25 11:11:01 -07:00
..
per_namespace [202012][BGP] starting BGP service after swss (#15365) 2023-06-07 19:19:37 -07:00
share_image [ChassisDB]: bring up ChassisDB service (#5283) 2020-10-14 15:15:24 -07:00
arp_update_vars.j2 [swss][arp_update] Send ipv6 pings over vlan sub interfaces (#8363) 2021-08-07 12:43:51 +00:00
backend_acl.j2 Add backend acl template (#11220) 2022-07-08 21:39:39 +00:00
buffers_config.j2 [202012][Buffer] Added cable length config to buffer config template for EdgeZoneAggregator (#14539) 2023-04-10 11:58:34 -07:00
config-chassisdb.service.j2 [ChassisDB]: bring up ChassisDB service (#5283) 2020-10-14 15:15:24 -07:00
config-setup.service.j2 [config-setup]: create a SONiC configuration management service (#3227) 2019-12-04 07:15:58 -08:00
database.service.j2 Multi-ASIC implementation (#3888) 2020-03-31 10:06:19 -07:00
dhcp_relay.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
docker_image_ctl.j2 [202012] Fix fast-reboot issue where cold restart is performed due to missing FAST_REBOOT system flag (#16669) 2023-09-25 11:11:01 -07:00
gbsyncd.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
iccpd.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
init_cfg.json.j2 [202012] [Fastboot] Delay PMON service for better fastboot performance (#10745) 2022-05-15 23:31:32 -07:00
kube_cni.10-flannel.conflist First cut image update for kubernetes support. (#5421) 2020-12-22 08:01:33 -08:00
lldp.service.j2 Changes for LLDP docker to support multi-npu platforms (#4530) 2020-05-11 11:05:44 -07:00
lldp.timer.j2 [202012] [Fastboot] Delay LLDP service for better fastboot performance (#10568) (#10744) 2022-05-15 15:05:29 +03:00
mgmt-framework.service.j2 [services] kill container on stop in warm/fast mode (#10511) 2022-04-18 14:27:48 -07:00
mgmt-framework.timer Grouping delayed services under a target for config reload checks (#7846) 2021-08-16 07:50:56 +00:00
mux.service.j2 [mux] Exit to write standby state to active-active ports (#11821) 2022-10-03 19:52:51 +00:00
nat.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00: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 [202012] [Fastboot] Delay PMON service for better fastboot performance (#10745) 2022-05-15 23:31:32 -07:00
pmon.timer [202012] [Fastboot] Delay PMON service for better fastboot performance (#10745) 2022-05-15 23:31:32 -07:00
qos_config.j2 [202012] Apply separated DSCP_TO_TC_MAP and TC_TO_QUEUE_MAP on dualtor (#12792) 2022-11-23 21:49:00 +08:00
radv.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
restapi.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
sflow.service.j2 [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
snmp.service.j2 [services] kill container on stop in warm/fast mode (#10511) 2022-04-18 14:27:48 -07:00
snmp.timer Grouping delayed services under a target for config reload checks (#7846) 2021-08-16 07:50:56 +00:00
sonic_debian_extension.j2 [202012] [TACACS+] Add audisp-tacplus for per-command accounting. (#8750) (#15788) 2023-07-12 18:46:47 -07:00
sonic-delayed.target Grouping delayed services under a target for config reload checks (#7846) 2021-08-16 07:50:56 +00:00
sonic.target [services] introduce sonic.target (#5705) 2021-03-04 21:23:05 +00:00
swss_vars.j2 [swss_vars]: Add 'resource_type' attribute. (#7188) 2021-05-03 10:38:11 -07:00
tacacs-config.service Add service to restore TACACS from old config (#7560) 2021-06-07 06:02:32 +00:00
tacacs-config.timer Add service to restore TACACS from old config (#7560) 2021-06-07 06:02:32 +00:00
telemetry.service.j2 [services] kill container on stop in warm/fast mode (#10511) 2022-04-18 14:27:48 -07:00
telemetry.timer Grouping delayed services under a target for config reload checks (#7846) 2021-08-16 07:50:56 +00:00
updategraph.service.j2 [config-setup]: create a SONiC configuration management service (#3227) 2019-12-04 07:15:58 -08:00