From d28ceb205895cbf2ed5012dfae377eeb92bf4dfd Mon Sep 17 00:00:00 2001 From: Shane Harvey Date: Fri, 2 Aug 2024 16:31:59 -0700 Subject: [PATCH] PYTHON-4021 Fix previous topologyDescription published when closing a client (#1769) --- pymongo/asynchronous/topology.py | 2 +- pymongo/synchronous/topology.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pymongo/asynchronous/topology.py b/pymongo/asynchronous/topology.py index 183c459f2..4e55db498 100644 --- a/pymongo/asynchronous/topology.py +++ b/pymongo/asynchronous/topology.py @@ -645,6 +645,7 @@ class Topology: :exc:`~.errors.InvalidOperation`. """ async with self._lock: + old_td = self._description for server in self._servers.values(): await server.close() @@ -664,7 +665,6 @@ class Topology: # Publish only after releasing the lock. if self._publish_tp: assert self._events is not None - old_td = self._description self._description = TopologyDescription( TOPOLOGY_TYPE.Unknown, {}, diff --git a/pymongo/synchronous/topology.py b/pymongo/synchronous/topology.py index eda5f01d3..8542f67bb 100644 --- a/pymongo/synchronous/topology.py +++ b/pymongo/synchronous/topology.py @@ -643,6 +643,7 @@ class Topology: :exc:`~.errors.InvalidOperation`. """ with self._lock: + old_td = self._description for server in self._servers.values(): server.close() @@ -662,7 +663,6 @@ class Topology: # Publish only after releasing the lock. if self._publish_tp: assert self._events is not None - old_td = self._description self._description = TopologyDescription( TOPOLOGY_TYPE.Unknown, {},