summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshenjiatong <yshxxsjt715@gmail.com>2020-06-30 08:56:26 +0800
committernorman shen <yshxxsjt715@gmail.com>2020-07-29 00:04:00 +0000
commit360deb89a7e95d332267564b486219e389a793f7 (patch)
tree7c09b5aca78e9da22068f6d349bf1710828024ef
parent6727be7890f64446f1658d79fac196d30b6f1a18 (diff)
downloadoslo-messaging-360deb89a7e95d332267564b486219e389a793f7.tar.gz
Catch ConnectionForced Exception12.1.3
Occasionally I saw large number of connectionforced exceptions. such exceptions cannot be healed automatically and requires a reboot. catch it and ensure connection established. Change-Id: I5c468d10230f05438df780e045f1e92662edf070 Closes-Bug: #1883038 (cherry picked from commit 26e8bb4cc9097fddf3c2e34599b131e3f5d73867)
-rw-r--r--oslo_messaging/_drivers/impl_rabbit.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/oslo_messaging/_drivers/impl_rabbit.py b/oslo_messaging/_drivers/impl_rabbit.py
index 46c5ae0..d16eb7d 100644
--- a/oslo_messaging/_drivers/impl_rabbit.py
+++ b/oslo_messaging/_drivers/impl_rabbit.py
@@ -26,6 +26,7 @@ import threading
import time
import uuid
+from amqp import exceptions as amqp_exec
import kombu
import kombu.connection
import kombu.entity
@@ -1012,7 +1013,8 @@ class Connection(object):
except (socket.timeout,
ConnectRefuseError,
OSError,
- kombu.exceptions.OperationalError) as exc:
+ kombu.exceptions.OperationalError,
+ amqp_exec.ConnectionForced) as exc:
LOG.info("A recoverable connection/channel error "
"occurred, trying to reconnect: %s", exc)
self.ensure_connection()