[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 17/20] python/qemu/qmp.py: Preserve error context on re-raise
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH 17/20] python/qemu/qmp.py: Preserve error context on re-raise |
Date: |
Wed, 7 Oct 2020 06:58:44 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 |
On 10/7/20 1:58 AM, John Snow wrote:
> 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>
> ---
> 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 9223307ed81..d911999da1f 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)
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
- [PATCH 13/20] python/qemu/console_socket.py: fix typing of settimeout, (continued)
- [PATCH 15/20] python/qemu/console_socket.py: Add type hint annotations, John Snow, 2020/10/06
- [PATCH 17/20] python/qemu/qmp.py: Preserve error context on re-raise, John Snow, 2020/10/06
- [PATCH 16/20] python/console_socket: avoid encoding to/from string, John Snow, 2020/10/06
- [PATCH 19/20] python/qemu/qmp.py: Straighten out exception hierarchy, John Snow, 2020/10/06
- [PATCH 20/20] python: add mypy config, John Snow, 2020/10/06
- Re: [PATCH 00/20] python/qemu: strictly typed mypy conversion, pt2, John Snow, 2020/10/08