Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GODRIVER-2855 Relax closed, cleared, checkout conditions on logger verification #1287

Merged
merged 6 commits into from
Jun 13, 2023

Conversation

prestonvasquez
Copy link
Collaborator

@prestonvasquez prestonvasquez commented Jun 8, 2023

GODRIVER-2855

Summary

Add the pool clear log event to the unordered list with the condition that closing a connection does not occur before clearing the pool.

Background & Motivation

The existing unified spec test for connection logging has a specific order required for the following three events: ConnectionPoolCleared, ConnectionPoolClosed, ConnectionCheckOutFailed. There is an acceptable race condition in the connection pool's workflow where it is non-deterministic whether the connection pool will fail a checkout or close a connection first. Because of this, either ConnectionPoolClosed or ConnectionCheckOutFailed may be received in any order. Currently, to account for this behavior, we considered both logs to be "unordered".

It appears that it is possible that the logs would propagate in this order: ConnectionCheckOutFailed, ConnectionPoolCleared, ConnectionPoolClosed. This is still technically allowed, the only condition is that "the pool clear does need to come before the connectionclosed.

Copy link
Collaborator

@matthewdale matthewdale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good 👍

@prestonvasquez prestonvasquez merged commit 7d13beb into mongodb:master Jun 13, 2023
@prestonvasquez prestonvasquez deleted the GODRIVER-2855 branch June 13, 2023 20:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants