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

Compatibility test may trigger segfaults #2098

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

G-D-Petrov
Copy link
Collaborator

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...
  • Have you updated the relevant docstrings, documentation and copyright notice?
  • Is this contribution tested against all ArcticDB's features?
  • Do all exceptions introduced raise appropriate error messages?
  • Are API changes highlighted in the PR description?
  • Is the PR labelled as enhancement or bug so it appears in autogenerated release notes?

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
@G-D-Petrov G-D-Petrov linked an issue Jan 2, 2025 that may be closed by this pull request
Copy link
Collaborator

@grusev grusev left a 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",
Copy link
Collaborator Author

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",
Copy link
Collaborator Author

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

@G-D-Petrov G-D-Petrov changed the title [DO NOT MERGE YET] Compatibility test may trigger segfaults Compatibility test may trigger segfaults Jan 6, 2025
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.

Comatibility test may trigger segfaults
2 participants