-
Notifications
You must be signed in to change notification settings - Fork 99
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
Compatibility test may trigger segfaults #2098
base: master
Are you sure you want to change the base?
Conversation
Skip mongo on 1.6.2 Update test fixtures to remove deprecated versions and avoid lmdb due to segfault issues Init tests flow Update test workflow to specify test suite paths and change container image Add new trigger Update test workflow to provide default values for Python version, OS, and test suite Fix variable naming in test workflow for consistency with Python version Update test workflow to use fromJson for input parameters in matrix strategy Refactor test workflow to improve input handling and consistency for Python versions, OS, and test types dud Update input parameters in test workflow to use string type and provide default values for Python versions, OS, and test types dud dad Refactor test workflow to enhance input handling for Python versions, OS, and test suites Fix compat tests Update input handling in test workflow to parse OS and test suite parameters as JSON Fix container definition in test workflow for Windows compatibility Refactor test workflow to use inputs directly for Python versions, OS, and test suites test with actually building the code base Remove python version input from test workflow and set default to Python 3.11 Remove fetch-depth setting from test workflow Set ARCTICDB_BUILD_DIR based on OS in test workflow Add ARCTICDB_VCPKG_PACKAGES_DIR to workflow for package management Add Windows-specific steps for ccache removal and MSVC installation in CI workflow Add ARCTICDB_PYTEST_ARGS for customizable pytest arguments in CI Refactor pytest argument handling in parallel test script Refactor pytest argument handling in parallel test script to streamline argument processing
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.
Very useful
] | ||
return self.execute(python_commands, {"expected_df": df}) | ||
|
||
|
||
@pytest.fixture( | ||
scope="session", | ||
# scope="session", |
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.
The changes here are so we can support parallel executions with pytest-xdist
"lmdb", | ||
# Don't include lmdb because there is a bug in 1.6.2/4.5.1 | ||
# which causes the tests to segfault intermittently | ||
# "lmdb", |
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.
This is the main changes, as :
- there is a bug on version 1.6.2 and 4.5.1 with lead to flaky seg faults with lmdb storage
- 1.6.2 doesn't support Mongo
Reference Issues/PRs
Fixes #1979
What does this implement or fix?
Removes the LMDB fixture from the compatibility tests because there is a bug on versions 1.6..2 and 4.5.1 that cause a Seg Fault with it.
Also adds a way to manually pass a string to pytest to change the tests that are executed.
Very useful in cases such as this change were you want to test only a specific subset of tests and you want to run them many times in parallel.
Any other comments?
Checklist
Checklist for code changes...