Merge pull request #1558 from andreymal/fix/graceful_shutdown

Fix graceful shutdown
This commit is contained in:
7 2019-04-20 20:02:16 +08:00 committed by GitHub
commit 6a4a3f617f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -119,7 +119,7 @@ class HttpProtocol(asyncio.Protocol):
self.router = router self.router = router
self.signal = signal self.signal = signal
self.access_log = access_log self.access_log = access_log
self.connections = connections or set() self.connections = connections if connections is not None else set()
self.request_handler = request_handler self.request_handler = request_handler
self.error_handler = error_handler self.error_handler = error_handler
self.request_timeout = request_timeout self.request_timeout = request_timeout
@ -554,11 +554,15 @@ class HttpProtocol(asyncio.Protocol):
:return: None :return: None
""" """
if from_error or self.transport.is_closing(): if from_error or self.transport is None or self.transport.is_closing():
logger.error( logger.error(
"Transport closed @ %s and exception " "Transport closed @ %s and exception "
"experienced during error handling", "experienced during error handling",
self.transport.get_extra_info("peername"), (
self.transport.get_extra_info("peername")
if self.transport is not None
else "N/A"
),
) )
logger.debug("Exception:", exc_info=True) logger.debug("Exception:", exc_info=True)
else: else: