diff --git a/pymongo/server_selectors.py b/pymongo/server_selectors.py index 0d1425ab31..d01cf2381e 100644 --- a/pymongo/server_selectors.py +++ b/pymongo/server_selectors.py @@ -32,6 +32,8 @@ class Selection: """Input or output of a server selector function.""" + __slots__ = ("topology_description", "server_descriptions", "primary", "common_wire_version") + @classmethod def from_topology_description(cls, topology_description: TopologyDescription) -> Selection: known_servers = topology_description.known_servers diff --git a/pymongo/topology_description.py b/pymongo/topology_description.py index 29293b2314..19c83cce0d 100644 --- a/pymongo/topology_description.py +++ b/pymongo/topology_description.py @@ -61,6 +61,17 @@ class _TopologyType(NamedTuple): class TopologyDescription: + __slots__ = ( + "_topology_type", + "_topology_settings", + "_replica_set_name", + "_server_descriptions", + "_max_set_version", + "_max_election_id", + "_incompatible_err", + "_ls_timeout_minutes", + ) + def __init__( self, topology_type: int,