lib: is_conn_error catch more exceptions

Related: https://pagure.io/koji/issue/2789
This commit is contained in:
Tomas Kopecek 2021-04-20 15:56:13 +02:00
parent e44d9f6bd7
commit 6e3553459f

View file

@ -2275,7 +2275,11 @@ def is_conn_error(e):
# these values, this is a connection error.
if getattr(e, 'errno', None) in (errno.ECONNRESET, errno.ECONNABORTED, errno.EPIPE):
return True
if 'BadStatusLine' in str(e):
str_e = str(e)
if 'BadStatusLine' in str_e or \
'RemoteDisconnected' in str_e or \
'ConnectionReset' in str_e or \
'IncompleteRead' in str_e:
# we see errors like this in keep alive timeout races
# ConnectionError(ProtocolError('Connection aborted.', BadStatusLine("''",)),)
return True