Skip to content

INTPYTHON-355 Add transaction support #317

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

Open
wants to merge 21 commits into
base: main
Choose a base branch
from

Conversation

timgraham
Copy link
Collaborator

@timgraham timgraham commented Jun 16, 2025

(initial comments at #313)

The transactions tests are running via test-python-atlas.yml which uses https://hub.docker.com/r/mongodb/mongodb-atlas-local. I guess it uses a replica set.

Results from testing on a sharded cluster are in my comment below.

fixes #7

@timgraham timgraham force-pushed the transactions branch 2 times, most recently from fe4e306 to 5b3b757 Compare June 16, 2025 21:47
@aclark4life

This comment was marked as outdated.

Copy link
Collaborator

@aclark4life aclark4life left a comment

Choose a reason for hiding this comment

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

LGTM, thanks! I'll follow up with @blink1073 to discuss running the entire Django test suite on a sharded cluster.

@blink1073
Copy link
Member

Yeah, the docker image only supports replica sets as I understand it. We maintain a GitHub Action that can start whatever you like, provided you don't need Atlas Search (which requires the docker container):

https://github.com/mongodb-labs/drivers-evergreen-tools/blob/master/action.yml
https://github.com/mongodb-labs/drivers-evergreen-tools/tree/master?tab=readme-ov-file#using-with-github-actions

You'd set toplogy: sharded_cluster

@timgraham timgraham force-pushed the transactions branch 2 times, most recently from ce0eb62 to d49e282 Compare June 19, 2025 01:45
@timgraham
Copy link
Collaborator Author

Results from sharded cluster tests:

  1. I've seen some a couple transient failures of the form:

Transaction fc444a97-2534-4c44-9ee3-cba40a215038 - Il1bctjvfYRA0JpLUY4Xle2E6bw+KM1YpMr4x52qGgE= - - :2767 was aborted on statement 8 due to: an error from cluster data placement change :: caused by :: PlanExecutor error during aggregation :: caused by :: Routing info refresh did not complete

Someone will have to interpret the meaning.

  1. It seems there's a problem using a dummy collection.

MongoDB errors with "sharding status of collection test_djangotests.__null is not currently known and needs to be recovered".

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.

INTPYTHON-355 add transaction support
3 participants