Skip to content

[config] Fix indentation level in _get_disabled_services_list()#965

Merged
jleveque merged 1 commit intosonic-net:masterfrom
jleveque:fix_config_bug
Jun 27, 2020
Merged

[config] Fix indentation level in _get_disabled_services_list()#965
jleveque merged 1 commit intosonic-net:masterfrom
jleveque:fix_config_bug

Conversation

@jleveque
Copy link
Copy Markdown
Contributor

If FEATURE table did not exist, config load/reload/reload_minigraph commands would crash similar to the following:

Executing reset-failed of service nat...
Executing reset-failed of service sflow...
Traceback (most recent call last):
  File "/usr/bin/config", line 12, in <module>
    sys.exit(config())
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 862, in reload
    _restart_services()
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 585, in _restart_services
    disable_services = _get_disabled_services_list()
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 518, in _get_disabled_services_list
    if status == "disabled":
UnboundLocalError: local variable 'status' referenced before assignment

Copy link
Copy Markdown
Contributor

@qiluo-msft qiluo-msft left a comment

Choose a reason for hiding this comment

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

Tested and it works!

@qiluo-msft
Copy link
Copy Markdown
Contributor

@daall FYI: this bug could not be caught by any linter I know. Maybe by vscode-python

@qiluo-msft
Copy link
Copy Markdown
Contributor

Please add either a unit test or vs test.

@jleveque
Copy link
Copy Markdown
Contributor Author

Retest this please

@daall
Copy link
Copy Markdown
Contributor

daall commented Jun 27, 2020

@daall FYI: this bug could not be caught by any linter I know. Maybe by vscode-python

Interesting! I guess since it is technically OK to do something like this in python:

if condition:
    status = True
else:
    status = False

<use status>

The linters don't check for it. Your suggestion of adding a test case for it is a good one!

@jleveque
Copy link
Copy Markdown
Contributor Author

Retest this please

@jleveque jleveque merged commit bafda3b into sonic-net:master Jun 27, 2020
@jleveque jleveque deleted the fix_config_bug branch June 27, 2020 18:00
abdosi pushed a commit that referenced this pull request Jul 8, 2020
If FEATURE table did not exist,` config load/reload/reload_minigraph` commands would crash similar to the following:

```
Executing reset-failed of service nat...
Executing reset-failed of service sflow...
Traceback (most recent call last):
  File "/usr/bin/config", line 12, in <module>
    sys.exit(config())
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 862, in reload
    _restart_services()
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 585, in _restart_services
    disable_services = _get_disabled_services_list()
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 518, in _get_disabled_services_list
    if status == "disabled":
UnboundLocalError: local variable 'status' referenced before assignment
```
abdosi pushed a commit to abdosi/sonic-utilities that referenced this pull request Aug 4, 2020
…c-net#965)

If FEATURE table did not exist,` config load/reload/reload_minigraph` commands would crash similar to the following:

```
Executing reset-failed of service nat...
Executing reset-failed of service sflow...
Traceback (most recent call last):
  File "/usr/bin/config", line 12, in <module>
    sys.exit(config())
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 862, in reload
    _restart_services()
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 585, in _restart_services
    disable_services = _get_disabled_services_list()
  File "/usr/lib/python2.7/dist-packages/config/main.py", line 518, in _get_disabled_services_list
    if status == "disabled":
UnboundLocalError: local variable 'status' referenced before assignment
```
stepanblyschak pushed a commit to stepanblyschak/sonic-utilities that referenced this pull request Apr 28, 2022
[sfpshow][mock_state_db] Tweak key names of some transceiver info fields
(sonic-net#958)
[config] Fix syntax error (sonic-net#966)
[config] Fix indentation level in _get_disabled_services_list() (sonic-net#965)
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