[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 18/21] python/qemu/qmp.py: Preserve error context on re-raise
From: |
John Snow |
Subject: |
[PULL 18/21] python/qemu/qmp.py: Preserve error context on re-raise |
Date: |
Tue, 20 Oct 2020 13:27:39 -0400 |
Use the "from ..." phrasing when re-raising errors to preserve their
initial context, to help aid debugging when things go wrong.
This also silences a pylint 2.6.0+ error.
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Message-id: 20201006235817.3280413-18-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
---
python/qemu/qmp.py | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
index 9223307ed8..d911999da1 100644
--- a/python/qemu/qmp.py
+++ b/python/qemu/qmp.py
@@ -181,10 +181,11 @@ def __get_events(self, wait: Union[bool, float] = False)
-> None:
self.__sock.settimeout(wait)
try:
ret = self.__json_read(only_event=True)
- except socket.timeout:
- raise QMPTimeoutError("Timeout waiting for event")
- except:
- raise QMPConnectError("Error while reading from socket")
+ except socket.timeout as err:
+ raise QMPTimeoutError("Timeout waiting for event") from err
+ except Exception as err:
+ msg = "Error while reading from socket"
+ raise QMPConnectError(msg) from err
if ret is None:
raise QMPConnectError("Error while reading from socket")
self.__sock.settimeout(None)
--
2.26.2
- [PULL 08/21] python/machine.py: Add _qmp access shim, (continued)
- [PULL 08/21] python/machine.py: Add _qmp access shim, John Snow, 2020/10/20
- [PULL 10/21] python/qemu: make 'args' style arguments immutable, John Snow, 2020/10/20
- [PULL 11/21] iotests.py: Adjust HMP kwargs typing, John Snow, 2020/10/20
- [PULL 13/21] python/qemu/console_socket.py: Correct type of recv(), John Snow, 2020/10/20
- [PULL 09/21] python/machine.py: fix _popen access, John Snow, 2020/10/20
- [PULL 12/21] python/qemu: Add mypy type annotations, John Snow, 2020/10/20
- [PULL 19/21] python: add mypy config, John Snow, 2020/10/20
- [PULL 15/21] python/qemu/console_socket.py: Clarify type of drain_thread, John Snow, 2020/10/20
- [PULL 14/21] python/qemu/console_socket.py: fix typing of settimeout, John Snow, 2020/10/20
- [PULL 21/21] python/qemu/qmp.py: Fix settimeout operation, John Snow, 2020/10/20
- [PULL 18/21] python/qemu/qmp.py: Preserve error context on re-raise,
John Snow <=
- [PULL 20/21] python/qemu/qmp.py: re-raise OSError when encountered, John Snow, 2020/10/20
- [PULL 17/21] python/qemu/console_socket.py: avoid encoding to/from string, John Snow, 2020/10/20
- [PULL 16/21] python/qemu/console_socket.py: Add type hint annotations, John Snow, 2020/10/20