Arvind Kandpal created CASSANDRA-21482:
------------------------------------------
Summary: Fix cqlshlib Cython compilation errors on Python 3.12 and
3.13
Key: CASSANDRA-21482
URL: https://issues.apache.org/jira/browse/CASSANDRA-21482
Project: Apache Cassandra
Issue Type: Bug
Components: Tool/cqlsh
Reporter: Arvind Kandpal
*Problem Description*
When running cqlsh tests (cqlsh-test) on Python 3.12 and 3.13 with Cython
enabled, the build fails during the compilation phase.
*Root Cause Analysis*
The build matrix currently enforces Cython < 3.0 (specifically version
`0.29.37`). Python 3.12 introduced massive internal C-API refactoring, which
completely removed fields like _PyCFrame.use_tracing.
When the older Cython version attempts to compile cqlshlib/copyutil.py with
line-tracing/profiling enabled for test coverage hooks, the generated C code
tries to access this non-existent member, causing gcc to fail hard with:
cqlshlib/copyutil.c: error: ‘_PyCFrame’ has no member named ‘use_tracing’`
(Note: As a temporary bypass to unblock pipeline testing, the Cython test
matrix for Python 3.12/3.13 has been skipped in CASSANDRA-20997 via Jenkinsfile
filtering)
[https://pre-ci.cassandra.apache.org/job/cassandra-5.0-20997/6/pipeline-overview/?selected-node=139]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]