PYTHON-5409 Make test_implicit_sessions_checkout less flaky (#2366)
This commit is contained in:
parent
24e9da6a09
commit
f50ef65dd5
@ -194,10 +194,11 @@ class TestSession(AsyncIntegrationTest):
|
||||
# successful connection checkout" test from Driver Sessions Spec.
|
||||
succeeded = False
|
||||
lsid_set = set()
|
||||
failures = 0
|
||||
for _ in range(5):
|
||||
listener = OvertCommandListener()
|
||||
client = await self.async_rs_or_single_client(event_listeners=[listener], maxPoolSize=1)
|
||||
listener = OvertCommandListener()
|
||||
client = await self.async_rs_or_single_client(event_listeners=[listener], maxPoolSize=1)
|
||||
# Retry up to 10 times because there is a known race that can cause multiple
|
||||
# sessions to be used: connection check in happens before session check in
|
||||
for _ in range(10):
|
||||
cursor = client.db.test.find({})
|
||||
ops: List[Tuple[Callable, List[Any]]] = [
|
||||
(client.db.test.find_one, [{"_id": 1}]),
|
||||
@ -240,9 +241,9 @@ class TestSession(AsyncIntegrationTest):
|
||||
if i.command.get("lsid"):
|
||||
lsid_set.add(i.command.get("lsid")["id"])
|
||||
if len(lsid_set) == 1:
|
||||
# Break on first success.
|
||||
succeeded = True
|
||||
else:
|
||||
failures += 1
|
||||
break
|
||||
self.assertTrue(succeeded, lsid_set)
|
||||
|
||||
async def test_pool_lifo(self):
|
||||
|
||||
@ -194,10 +194,11 @@ class TestSession(IntegrationTest):
|
||||
# successful connection checkout" test from Driver Sessions Spec.
|
||||
succeeded = False
|
||||
lsid_set = set()
|
||||
failures = 0
|
||||
for _ in range(5):
|
||||
listener = OvertCommandListener()
|
||||
client = self.rs_or_single_client(event_listeners=[listener], maxPoolSize=1)
|
||||
listener = OvertCommandListener()
|
||||
client = self.rs_or_single_client(event_listeners=[listener], maxPoolSize=1)
|
||||
# Retry up to 10 times because there is a known race that can cause multiple
|
||||
# sessions to be used: connection check in happens before session check in
|
||||
for _ in range(10):
|
||||
cursor = client.db.test.find({})
|
||||
ops: List[Tuple[Callable, List[Any]]] = [
|
||||
(client.db.test.find_one, [{"_id": 1}]),
|
||||
@ -240,9 +241,9 @@ class TestSession(IntegrationTest):
|
||||
if i.command.get("lsid"):
|
||||
lsid_set.add(i.command.get("lsid")["id"])
|
||||
if len(lsid_set) == 1:
|
||||
# Break on first success.
|
||||
succeeded = True
|
||||
else:
|
||||
failures += 1
|
||||
break
|
||||
self.assertTrue(succeeded, lsid_set)
|
||||
|
||||
def test_pool_lifo(self):
|
||||
|
||||
Loading…
Reference in New Issue
Block a user