Skip to content

[Platform API] HTTP server handles NotImplementedError#1822

Merged
jleveque merged 1 commit intosonic-net:masterfrom
jleveque:platform_api_server_handle_not_implemented
Jun 30, 2020
Merged

[Platform API] HTTP server handles NotImplementedError#1822
jleveque merged 1 commit intosonic-net:masterfrom
jleveque:platform_api_server_handle_not_implemented

Conversation

@jleveque
Copy link
Contributor

Previously, if the HTTP server attempted to execute a non-implemented API, the API would throw NotImplementedError, but the HTTP server did not handle this exception, thus it would not send a proper HTTP response, causing the pytests to fail with BadStatusLine. Example:

FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_name - BadStatusLine: ''
FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_model - BadStatusLine: ''
FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_serial - BadStatusLine: ''
FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_status - BadStatusLine: ''

With this change, the HTTP server handles the exception and now sends a proper HTTP response containing None, which allows the pytests to interpret the failure properly. Example:

FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_name - Failed: Unable to retrieve transceiver 0 name
FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_model - Failed: Unable to retrieve transceiver 0 model
FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_serial - Failed: Unable to retrieve transceiver 0 model
FAILED platform_tests/api/test_sfp.py::TestSfpApi::test_get_status - Failed: Unable to retrieve transceiver 0 status

The server will now also log a warning on the DuT.

@jleveque
Copy link
Contributor Author

Retest vsimage please

2 similar comments
@jleveque
Copy link
Contributor Author

Retest vsimage please

@jleveque
Copy link
Contributor Author

Retest vsimage please

@jleveque jleveque merged commit 25c9ee9 into sonic-net:master Jun 30, 2020
@jleveque jleveque deleted the platform_api_server_handle_not_implemented branch June 30, 2020 01:10
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
0dcb2b6 Open record file in append mode (sonic-net#1845)
03ce2ee [vnet/vxlan] Add support of multiple mappers for the VxLAN tunnel (sonic-net#1843)
c5e90ab VOQ: Nexthop for remote VOQ LC should be created on inband OIF. (sonic-net#1823)
834c5c8 Td2: Reclaim buffer from unused ports (sonic-net#1830)
a5ad55c [Dynamic Buffer Calc] Bug fix: Don't create lossless buffer profile for active ports without speed configured (sonic-net#1822)
f50368f [cfgmgr] Update Makefile.am to consume lib zmq (sonic-net#1865)
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
f81043b1f9ff02196629655f4735b33afd7f0ae1 (HEAD -> 202111, origin/202111) [port2alias]: Fix to get right number of return values (sonic-net#1906)
bbbf65943ec46e9330eadaed8bcdf1612cb8bd55 [CLI][show bgp] On chassis don't show internal BGP sessions by default (sonic-net#1927)
e12de7e7bf6cff3ec127f261bf88e4d29776d27b [port] Fix port speed set (sonic-net#1952)
cae7af752d484956d7fe40e4c3a849ddad460976 Fix invalid output of syslog IPv6 servers (sonic-net#1933)
6009341ddf790094166be5f0a81b4c114f00220b Routed subinterface enhancements (sonic-net#1821)
6ab9d67ca6550c592b97afb513804be474f84eb0 Enhance sfputil for CMIS QSFP (sonic-net#1949)
76cc67ba4f81c69b20efb3341808037c9db8f703 [debug dump] Refactoring Modules and Unit Tests (sonic-net#1943)
cff58a8171423e4012bc8caf9748996a1e98b7e2 Add command reference for trap flow counters (sonic-net#1876)
71cf3ee43524d56ad57dd90b937cfbf4bf63ba6a [Reclaim buffer] [Mellanox] Db migrator support reclaiming reserved buffer for unused ports (sonic-net#1822)
e699b49fb722e6d6fe5a1d2dacd2d39eb085c1e4 Add show command for BFD sessions (sonic-net#1942)
bb6c5774c843dbfad5f1ba00ee76dae7720902d1 [warm-reboot] Fix failures of warm reboot on disconnect of ssh session (sonic-net#1529)
2e8bbb308477862a76d2327fcf696875e8f08650 Add trap flow counter support (sonic-net#1868)
58407c1386ef13772a9a9320a795e380f162ab2c [load_minigraph] Delay pfcwd start until the buffer templates are rendered (sonic-net#1937)
eb388e0584ba1fe8d8dba58f1c5a148036ffe047 [sonic-package-manager] support sonic-cli-gen and packages with YANG model (sonic-net#1650)
2371d84e7d281bdb9988b5a1a012498dbbfb89ec generic_config_updater: Filename changed & VLAN validator added (sonic-net#1919)
7c0718dfaf23289d4ecc3ada9332e465c9a4e56b [config reload] Update command reference (sonic-net#1941)

Signed-off-by: Abhishek Dosi <[email protected]>
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.

2 participants