Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion antora.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ asciidoc:
attributes:
# General attributes
company: 'DataStax'
support-url: 'https://support.datastax.com'
# Other product attributes
cass-reg: 'Apache Cassandra(R)'
cass: 'Apache Cassandra'
Expand Down
1 change: 0 additions & 1 deletion in-progress/managing.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2783,7 +2783,6 @@ This can act as a convenient alternative to installing and configuring a xref:as
To use `cqlsh` commands, you must have a supported version of Python installed on your system.
The underlying `cqlsh` utility requires Python 2.7 (with TLS support) or Python 3.6--3.11.
Python versions 3.12 and later are not supported.
For more details, see this https://support.datastax.com/s/article/cqlsh-may-fail-with-A-Python-installation-with-SSL-is-required-to-connect-to-a-cloud-cluster-when-connecting-to-Astra[Support article]

Use the `astra db cqlsh` command to start `cqlsh` in interactive mode:

Expand Down
42 changes: 35 additions & 7 deletions modules/quickstarts/pages/cqlsh.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,46 @@ The first time you run an `astra db cqlsh` command, the {product} downloads and
All `astra db cqlsh` commands require a database name or ID.
The first time you connect to a specific database, {product} downloads the database's {scb} into the {product} home directory.

[#prerequisites]
== Prerequisites

To use `cqlsh` commands, you must have a supported version of Python installed on your system.
The `cqlsh` commands required one of the following supported versions of Python with SSL/TLS:
Comment thread
aimurphy marked this conversation as resolved.
Outdated

The underlying `cqlsh` utility requires Python 2.7 with TLS support, or any version of Python from 3.6 through 3.11.
Python versions 3.12 and later are not supported.
For more details, see this https://support.datastax.com/s/article/cqlsh-may-fail-with-A-Python-installation-with-SSL-is-required-to-connect-to-a-cloud-cluster-when-connecting-to-Astra[support article]
* Python 3.6 to 3.11
* Python 2.7.12 or later

Any supported version of Python must be available in your system's `PATH` for the {product} to use it.
It does not require that the supported version be your system's default version of Python.
All other versions aren't supported.

If the {product} reports `ModuleNotFoundError` after running any of the `astra db cqlsh` commands, you might not have a supported version of Python available in your system's `PATH`.
Any supported Python version must be installed on your system _and_ available in your system's `PATH` for the {product} to use it with the `cqlsh` commands.
This version doesn't need to be your system's default Python version as long as it's available in the `PATH`.
For example, you can use a virtual environment or symbolic links to add a supported Python version without changing your system's default version.

=== Troubleshoot ModuleNotFoundError and Python installation errors

If the {product} reports `ModuleNotFoundError` after running any of the `astra db cqlsh` commands, make sure you have a <<prerequisites,supported Python version>> available in your system's `PATH`.

The error `A Python installation with SSL is required to connect to a cloud cluster` means that the detected Python version doesn't support TLS.
This typically happens with Python versions earlier than 2.7.12, which don't support TLS.

.Verify TLS support
[%collapsible]
====
To verify whether your current Python version supports TLS, run the following command:

[source,shell]
----
python -c 'from ssl import SSLContext, PROTOCOL_TLS, CERT_REQUIRED'
----

If TLS isn't supported, the following error is returned:

[source,console]
----
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: cannot import name PROTOCOL_TLS
----
====

== Start an interactive cqlsh session

Expand Down