-
Notifications
You must be signed in to change notification settings - Fork 21
HCD-190: Upgrade internal pyhon driver to 3.29.2 #1960
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
Checklist before you submit for review
|
dfa84f4
to
cba0817
Compare
|
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. |
3b89f5d
to
d062014
Compare
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). |
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.
I agree with Mick on adding the C* tickets.
I've added a minor suggestion. Approving ticket as there's not need for further review rounds.
pylib/cqlshlib/test/run_cqlsh.py
Outdated
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.
Potentially we could remove the try clause as this was meant to support older Python versions which we no longer support. I wonder if there aren't more such cases.
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.
Looks good to me, but I think we should update:
- The
README.asc
requirements section. - This check in
cqlsh.py
. - Maybe this section about requirements in the old doc, although I'm not sure we maintain that anymore.
Also, there are multiple CircleCI jobs using Python 2.7 that we should remove. But, since I think we are not using CircleCI anymore, probably we will be fine with a followup ticket to remove those jobs. Or perhaps even the entire CircleCI config?
@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. |
Thanks, I've just approved the CNDB PR. It will need to be updated after merging this PR. |
bin/cqlsh.py
Outdated
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.
I think Python 2.7 doesn't work at all now. Cqlsh will immediately fail with a syntax error before ever reaching this check. So I think we can remove the entire maybe_warn_py2
check and its associated test, test_warn_py2
.
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.
That's a good point. Honestly I wanted to keep this test and see whether it will break in CI but then I realise given https://jenkins-stargazer.aws.dsinternal.org/job/ds-cassandra-pr-gate/job/PR-1960/9/testReport/cqlshlib.python3.8.jdk11.no-cython.x86_64.test.test_cqlsh_output/TestCqlshOutput/ isn't run against python 2.7 (as the config has been removed) it won't be run at all.
And yes you are right, it will fail much earlier in the call-stack so it doesn't make much sense to keep it.
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.
It seems the test_no_warn_py3
would serve little value after the deletion of maybe_warn_py2
, I think it would make sense to remove it too as part of this little rework.
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.
Agree, that one can be deleted too.
I found apache@768bdff, 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). |
The latest commit broke CI, I need to fix it. |
|
❌ Build ds-cassandra-pr-gate/PR-1960 rejected by Butler1 regressions found Found 1 new test failures
Found 1 known test failures |
- 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. Apply review feedback Review feedback part2
Remove Pytonh 2.7 dependency from saferscanner
Change six functions in cqlshlib to native Python 3 ones.
10458be
to
aea9716
Compare
It turns out to be blocked by https://issues.apache.org/jira/browse/CASSANDRA-20053 due to the asyncore removal. |
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
CNDB PR: https://github.com/riptano/cndb/pull/15198.