-
-
Notifications
You must be signed in to change notification settings - Fork 18.6k
Parallelize test_sql.py - Issue #60378 #61551
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR but this solution is too heavy handed.
As mentioned in the issue, the tests need to be refactored in a way to have unique table names
Thanks for the feedback @mroeschke! Having now run this through CI, I agree! I come from a production-oriented environment, so I initially underestimated the architecture/OS complexity. I looked into per-table UUIDs as per @UmbertoFasci's PR, and was concerned it might impact future test writing, and it still had some parallelization issues. I thought that using a different approach could solve these problems, but I see the value of this approach. I will revise this to use UUIDs on a per-test basis (building off of @UmbertoFasci's work). |
I'm not ready for review yet. I added the connect_and_uuid fixture, this was the most parsimonious way I found to manage the sqlalchemy connection objects, as well as sharing the same UUIDs between tests (which create views and tables) and fixtures (which tear down views and tables). Working to extend this fixture to the rest of the tests. |
- [x] Parallelizes test_sql.py via per-worker_DBs (approach superseded due to complexity)