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

Remove exception throwing when initializing missing loopback interface #90

Merged
merged 4 commits into from
Jun 24, 2022

Conversation

zjswhhh
Copy link
Contributor

@zjswhhh zjswhhh commented Jun 24, 2022

Description of PR

Summary:
Fixes # (issue)
This PR is to avoid throwing exception when linkmgrd initializing without CONFIG DB loopback interface entry.

sign-off: Jing Zhang zhangjing@microsoft.com

Type of change

  • Bug fix
  • New feature
  • Doc/Design
  • Unit test

Approach

What is the motivation for this PR?

Avoid unnecessary process exits.

How did you do it?

Log a fatal message instead of exiting the process.

How did you verify/test it?

Tested on dual testbeds. Met all expected behavior below:

  1. Remove loopback interface live (when linkmgrd is running):
    No linkmgrd crash. show mux status reported unhealthy as no IP interface to receive heartbeat packets.
  2. Start mux service when missing loopback interface:
    No linkmgrd crash. Saw fatal log below in syslog. show mux status report unhealthy.
  3. Add back loopback interface CONFIG DB entry live:
    show mux status reported healthy.

Any platform specific information?

Documentation

@zjswhhh zjswhhh merged commit 9265497 into sonic-net:master Jun 24, 2022
@zjswhhh zjswhhh deleted the avoid_throw_master branch June 24, 2022 16:10
yxieca pushed a commit that referenced this pull request Jun 24, 2022
#90)

### Description of PR
Summary:
Fixes # (issue)
This PR is to avoid throwing exception when linkmgrd initializing without CONFIG DB loopback interface entry. 

sign-off: Jing Zhang zhangjing@microsoft.com 

### Type of change
- [x] Bug fix

### Approach
#### What is the motivation for this PR?
Avoid unnecessary process exits. 

#### How did you do it?
Log a fatal message instead of exiting the process. 

#### How did you verify/test it?
Tested on dual testbeds. Met all expected behavior below:
1. Remove loopback interface live (when linkmgrd is running):   
    No linkmgrd crash. `show mux status` reported `unhealthy` as no IP interface to receive heartbeat packets.
2. Start mux service when missing loopback interface:  
    No linkmgrd crash. Saw fatal log below in syslog. `show mux status` report `unhealthy`.
3. Add back loopback interface CONFIG DB entry live:  
    `show mux status` reported `healthy`.
qiluo-msft pushed a commit that referenced this pull request Jul 5, 2022
#90)

### Description of PR
Summary:
Fixes # (issue)
This PR is to avoid throwing exception when linkmgrd initializing without CONFIG DB loopback interface entry. 

sign-off: Jing Zhang zhangjing@microsoft.com 

### Type of change
- [x] Bug fix

### Approach
#### What is the motivation for this PR?
Avoid unnecessary process exits. 

#### How did you do it?
Log a fatal message instead of exiting the process. 

#### How did you verify/test it?
Tested on dual testbeds. Met all expected behavior below:
1. Remove loopback interface live (when linkmgrd is running):   
    No linkmgrd crash. `show mux status` reported `unhealthy` as no IP interface to receive heartbeat packets.
2. Start mux service when missing loopback interface:  
    No linkmgrd crash. Saw fatal log below in syslog. `show mux status` report `unhealthy`.
3. Add back loopback interface CONFIG DB entry live:  
    `show mux status` reported `healthy`.
zjswhhh added a commit to sonic-net/sonic-buildimage that referenced this pull request Jul 12, 2022
[master][sonic-linkmgrd] submodule update

58d8aae Longxiang Lyu Sat Jul 2 10:14:50 2022 +0800 Enforce switch after config mux to active (sonic-net/sonic-linkmgrd#95)
600df46 Longxiang Lyu Thu Jun 30 15:09:10 2022 +0800 Add unittest to verify mux toggle active (sonic-net/sonic-linkmgrd#94)
400b1b8 gregshpit Wed Jun 29 21:32:45 2022 +0300 For Sonic cross-compilation build. CC variable is used as gcc compiler. CXX variable is used as g++ compiler. (sonic-net/sonic-linkmgrd#91)
a516668 Jing Zhang Tue Jun 28 11:07:23 2022 -0700 Use Vlan MAC as src MAC for link prober by default (sonic-net/sonic-linkmgrd#93)
6b5d739 Longxiang Lyu Tue Jun 28 22:46:12 2022 +0800 Fix inconsistent mux state (sonic-net/sonic-linkmgrd#92)
9265497 Jing Zhang Fri Jun 24 09:10:12 2022 -0700 Remove exception throwing when initializing missing loopback interface (sonic-net/sonic-linkmgrd#90)

sign-off: Jing Zhang zhangjing@microsoft.com
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.

4 participants