cassandra icon indicating copy to clipboard operation
cassandra copied to clipboard

HCD-190: Upgrade internal pyhon driver to 3.29.2

Open szymon-miezal opened this issue 3 months ago • 12 comments

What is the issue

The old internal python driver disallows using Python 3.12 in cqlsh.

What does this PR fix and why was it fixed

  • Replace cassandra-driver-internal-only-3.26.0 with 3.29.2
  • Update cqlsh and cqlsh.py to support the new driver version
  • Remove obsolete Python 2.7, 3.7 Docker configurations, update 3.8 Dockerfile
  • Add Python 3.12 Docker configuration support
  • Update requirements.txt and test configurations
  • In ports the work done under CASSANDRA-19245, CASSANDRA-17417 and CASSANDRA-18354

CNDB PR: https://github.com/riptano/cndb/pull/15198.

szymon-miezal avatar Aug 22 '25 13:08 szymon-miezal

Checklist before you submit for review

  • [ ] This PR adheres to the Definition of Done
  • [ ] Make sure there is a PR in the CNDB project updating the Converged Cassandra version
  • [ ] Use NoSpamLogger for log lines that may appear frequently in the logs
  • [ ] Verify test results on Butler
  • [ ] Test coverage for new/modified code is > 80%
  • [ ] Proper code formatting
  • [ ] Proper title for each commit staring with the project-issue number, like CNDB-1234
  • [ ] Each commit has a meaningful description
  • [ ] Each commit is not very long and contains related changes
  • [ ] Renames, moves and reformatting are in distinct commits
  • [ ] All new files should contain the DataStax copyright header instead of the Apache License one

github-actions[bot] avatar Aug 22 '25 13:08 github-actions[bot]

Butler report looks ok after addressing the regressions: http://butler-stargazer.aws.dsinternal.org/#/ci/upstream/compare/ds-cassandra-pr-gate/HCD-190/to/ds-cassandra-build-nightly/main.

szymon-miezal avatar Aug 26 '25 09:08 szymon-miezal

Can you update the commit message to reference those CASSANDRA tickets. This makes life easier for the CC rebaser (e.g. knowing whether they should rebase the commit or throw it away).

michaelsembwever avatar Aug 29 '25 11:08 michaelsembwever

@szymon-miezal Do we have a companion CNDB PR to verify that this doesn't break something there?

adelapena avatar Aug 29 '25 12:08 adelapena

@szymon-miezal Do we have a companion CNDB PR to verify that this doesn't break something there?

I did create https://github.com/riptano/cndb/pull/15198 for that purpose, it looks somewhat ok, I mean, the failures seem unrelated but a CNDB-trained eye would be appreciated on it for sure.

szymon-miezal avatar Aug 29 '25 12:08 szymon-miezal

@szymon-miezal Do we have a companion CNDB PR to verify that this doesn't break something there?

I did create riptano/cndb#15198 for that purpose, it looks somewhat ok, I mean, the failures seem unrelated but a CNDB-trained eye would be appreciated on it for sure.

Thanks, I've just approved the CNDB PR. It will need to be updated after merging this PR.

adelapena avatar Aug 29 '25 14:08 adelapena

I found https://github.com/apache/cassandra/commit/768bdffe5298b937bfafc2eb42fb93454cfca521, which I figure shall be incorporated as well as part of this effort (given the current state of the patch removes python 2.7 support).

szymon-miezal avatar Sep 02 '25 08:09 szymon-miezal

The latest commit broke CI, I need to fix it.

szymon-miezal avatar Sep 02 '25 10:09 szymon-miezal

:x: Build ds-cassandra-pr-gate/PR-1960 rejected by Butler


1 regressions found See build details here


Found 1 new test failures

Test Explanation Runs Upstream
o.a.c.sensors.SensorsReadTest.BeforeFirstTest NEW :red_circle::white_circle: 0 / 2

Found 1 known test failures

cassci-bot avatar Sep 02 '25 15:09 cassci-bot

It turns out to be blocked by https://issues.apache.org/jira/browse/CASSANDRA-20053 due to the asyncore removal. I am going to put it back into the draft stage before the tackle the blocker.

szymon-miezal avatar Sep 04 '25 11:09 szymon-miezal