Skip to content

Fixes to run tests at Man #2390

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 4 commits into
base: master
Choose a base branch
from
Open

Fixes to run tests at Man #2390

wants to merge 4 commits into from

Conversation

grusev
Copy link
Collaborator

@grusev grusev commented Jun 6, 2025

Reference Issues/PRs

What does this implement or fix?

  1. A test now accepts several possible errors as different S3 storages might have different errors.
  2. A new test is failing because on pandas 1.X which is at pegagus>next the x column will be silently converted to float64
  3. Shorter logs on errors - no dataframe dumps
(38) grusev@dlonapatcs502:~/source/man.arcticdb/arcticdb_link/python DEV $ pytest -v tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update
================================================================== test session starts ==================================================================
platform linux -- Python 3.8.12, pytest-3.10.1, py-1.8.0, pluggy-0.13.1 -- /users/is/grusev/pyenvs/38/bin/python
cachedir: .pytest_cache
hypothesis profile 'dev' -> database=DirectoryBasedExampleDatabase('/users/is/grusev/source/man.arcticdb/arcticdb_link/python/.hypothesis/examples')
rootdir: /users/is/grusev/source/man.arcticdb/arcticdb_link, inifile:
plugins: server-fixtures-1.7.0+ahl1, virtualenv-1.2.7, forked-0.2, xdist-1.24.1, shutil-1.7.0, ahl.pkglib-2!202505010022+n00f8bac, cpp-0.3.1, hypothesis-4.39.3+ahl1, timeout-1.4.2
collected 30 items                                                                                                                                      

tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[s3_store_factory-versions_to_delete0] SKIPPED         [  3%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[s3_store_factory-versions_to_delete1] SKIPPED         [  6%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[s3_store_factory-versions_to_delete2] SKIPPED         [ 10%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[s3_store_factory-versions_to_delete3] SKIPPED         [ 13%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[s3_store_factory-versions_to_delete4] SKIPPED         [ 16%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[s3_store_factory-versions_to_delete5] SKIPPED         [ 20%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[nfs_backed_s3_store_factory-versions_to_delete0] SKIPPED [ 23%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[nfs_backed_s3_store_factory-versions_to_delete1] SKIPPED [ 26%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[nfs_backed_s3_store_factory-versions_to_delete2] SKIPPED [ 30%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[nfs_backed_s3_store_factory-versions_to_delete3] SKIPPED [ 33%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[nfs_backed_s3_store_factory-versions_to_delete4] SKIPPED [ 36%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[nfs_backed_s3_store_factory-versions_to_delete5] SKIPPED [ 40%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[azure_store_factory-versions_to_delete0] SKIPPED      [ 43%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[azure_store_factory-versions_to_delete1] SKIPPED      [ 46%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[azure_store_factory-versions_to_delete2] SKIPPED      [ 50%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[azure_store_factory-versions_to_delete3] SKIPPED      [ 53%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[azure_store_factory-versions_to_delete4] SKIPPED      [ 56%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[azure_store_factory-versions_to_delete5] SKIPPED      [ 60%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_s3_store_factory-versions_to_delete0] PASSED     [ 63%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_s3_store_factory-versions_to_delete1] PASSED     [ 66%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_s3_store_factory-versions_to_delete2] PASSED     [ 70%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_s3_store_factory-versions_to_delete3] PASSED     [ 73%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_s3_store_factory-versions_to_delete4] PASSED     [ 76%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_s3_store_factory-versions_to_delete5] PASSED     [ 80%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_gcp_store_factory-versions_to_delete0] SKIPPED   [ 83%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_gcp_store_factory-versions_to_delete1] SKIPPED   [ 86%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_gcp_store_factory-versions_to_delete2] SKIPPED   [ 90%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_gcp_store_factory-versions_to_delete3] SKIPPED   [ 93%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_gcp_store_factory-versions_to_delete4] SKIPPED   [ 96%]
tests/integration/arcticdb/version_store/test_deletion.py::test_delete_versions_with_update[real_gcp_store_factory-versions_to_delete5] SKIPPED   [100%]

========================================================= 6 passed, 24 skipped in 7.31 seconds ==========================================================

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?

@grusev grusev added the patch Small change, should increase patch version label Jun 6, 2025
@poodlewars
Copy link
Collaborator

Shouldn't these tests run with Pandas 1 in our Github CI, using the compat requirements?

@grusev
Copy link
Collaborator Author

grusev commented Jun 9, 2025

Shouldn't these tests run with Pandas 1 in our Github CI, using the compat requirements?

You are right https://github.com/man-group/ArcticDB/actions/runs/15530593136/job/43718937934?pr=2393

Then I have no idea what happens but the error suggests that the function returns float64 while source df is int64. And that could have been the only theory I have, which actually rwould fix the problem (this is patching the pandas returned df, not arctics, so it should be fine)

@@ -331,6 +331,8 @@ def build_expected_df(dataframes):
expected = expected.combine_first(d)
if not expected.empty:
expected.loc[d.index] = d
# pandas 1.0 patch, otherwise the col will be float64
Copy link
Collaborator

Choose a reason for hiding this comment

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

We've seen that this doesn't always happen with Pandas 1.0. It would be much better to understand why we need this change properly before merging this

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

At Man's internal we are testing with : pandas 1.0.5
At Github we do with 1.3.5

The problem is in between those pandas versions

We should merge this change, as there are more surprises probably waiting. Let's finish first the whole VAST project and see what is there still to investigate afterwards

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
patch Small change, should increase patch version
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants