Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[service dependent] describe non-warm-reboot dependency outside systemd #3311

Merged
merged 4 commits into from
Aug 8, 2019

Conversation

yxieca
Copy link
Contributor

@yxieca yxieca commented Aug 8, 2019

- What I did

When dependency was described with systemctl, it will kick in all the time,
including under warm reboot/restart scenarios. This is not what we always
want. For components that are capable of warm reboot/start, they need to
describe dependency in service files.

Signed-off-by: Ying Xie ying.xie@microsoft.com

- How to verify it
Without this change, when warm reboot test is executed, randomly the LAGs would flap. When running continuous warm reboot test, the LAG up time on the peers will eventually show this problem.

With the change in place, the LAG reset is not seen.

…mctl

When dependency was described with systemctl, it will kick in all the time,
including under warm reboot/restart scenarios. This is not what we always
want. For components that are capable of warm reboot/start, they need to
describe dependency in service files.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
@lguohan
Copy link
Collaborator

lguohan commented Aug 8, 2019

i think the reason is that in the warm reboot mode, we need to first stop swss and then do the SAI pre-shutdown, finally, we stop the team service to give us full 90 seconds for coming up.

files/scripts/swss.sh Outdated Show resolved Hide resolved
Adding require swss will cause teamd to be killed by systemctl when swss
stops. This is not what we want in warm reboot.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
Copy link
Contributor

@jleveque jleveque left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As comments, plus please also fix typo in PR title ("systenctk").

Suggest to change the title to: "[services] Describe non-warm-reboot dependency outside systemd"

files/scripts/swss.sh Outdated Show resolved Hide resolved
@yxieca yxieca changed the title [service dependent] describe non-warm-reboot dependency outside systenctk [service dependent] describe non-warm-reboot dependency outside systenctl Aug 8, 2019
@yxieca yxieca changed the title [service dependent] describe non-warm-reboot dependency outside systenctl [service dependent] describe non-warm-reboot dependency outside systemctl Aug 8, 2019
@yxieca yxieca changed the title [service dependent] describe non-warm-reboot dependency outside systemctl [service dependent] describe non-warm-reboot dependency outside systemd Aug 8, 2019
@yxieca yxieca merged commit a46df66 into sonic-net:master Aug 8, 2019
@yxieca yxieca deleted the service branch August 8, 2019 22:45
yxieca added a commit that referenced this pull request Aug 8, 2019
…md (#3311)

* [service dependent] describe non-warm-reboot dependency outside systemctl

When dependency was described with systemctl, it will kick in all the time,
including under warm reboot/restart scenarios. This is not what we always
want. For components that are capable of warm reboot/start, they need to
describe dependency in service files.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>

* [service] teamd service should not require swss service

Adding require swss will cause teamd to be killed by systemctl when swss
stops. This is not what we want in warm reboot.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>

* refactoring code

* rename functions to match other functions in the file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants