Welcome to the new DOCS.vastdata.com. We've added new menus and a version selector, plus new persona and resource pages to help customers get started. Looking for a previous article? Use the docs search.

Version compatibility

Prev Next

Applies to VAST Cluster 5.5. Examples use the VAST DataBase Python SDK 2.1.0.

This page answers three questions:

  • Which vastdb Python SDK can I use with my cluster?
  • Which SDK features need a newer cluster?
  • Which Trino and Spark versions go with my cluster?

Find your versions

Run this with the connection environment variables from the quickstart:

import vastdb

session = vastdb.connect()
print("SDK:", vastdb.version())
print("Cluster:", ".".join(str(n) for n in session.features.vast_version))
SDK: 2.1.0
Cluster: 5.5.0.1

When you connect, the SDK reads the cluster version from the Server header of the cluster's response and keeps it in session.features.vast_version. It uses that version to decide which features to allow (see below). If the version string isn't in the format the SDK expects, connect() raises NotImplementedError; see errors.

The cluster reports four numbers, for example 5.5.0.1. This page writes cluster releases as, for example, 5.5 or 5.0.0-SP10.

SDK and cluster

SDK (vastdb) Minimum VAST Cluster Python
2.0.0 – 2.1.0 5.0.0-SP10 3.10 – 3.13
0.1.7 – 1.5.0 5.0.0-SP10 3.9 – 3.12
0.1.6 and earlier Not stated 3.9 – 3.12 (0.1.x); not stated

The minimum cluster comes from the SDK's README, which has said "5.0.0-sp10 or later" since 0.1.7. The Python ranges come from each release's package metadata. 2.0.0 dropped official support for Python 3.9 and added 3.13.

A newer SDK connects to any cluster in that range. It refuses only the individual features that your cluster is too old for.

Which SDK should I install? On a 5.5 cluster, install 2.1.0. Partitioned tables need it.

SDK features that need a newer cluster

Before it uses one of these features, the SDK checks the cluster version. If the cluster is too old, it raises NotSupportedVersion without sending a request. The messages are listed in errors. The check happens only in the calls listed in the table.

Feature Checked in (SDK 2.1.0) Minimum cluster First SDK release with the feature
Partitioned tables Session.buffered_inserter() 5.5 2.1.0
Vector-indexed tables Loading the metadata of a table that has a vector index 5.5 2.0.7; the version check was added in 2.0.14. vector_search() arrived in 2.0.3
Blob expansion create_blob_expansion(), blob_expansion() 5.5 2.0.9; the version check was added by 2.0.12
Sorted tables add_sorting_key() 5.3 (see note) 1.3.8; use 1.3.9 or later
Zip import (ImportConfig.key_names) import_files() with key_names set 5.3.1 1.3.8
Imports table create_imports_table(), imports_table() 5.2 0.1.3
User-defined row IDs create_table(use_external_row_ids_allocation=True) 5.1 0.1.7
Choosing a semi-sorted projection QueryConfig(semi_sorted_projection_name=...) 5.1 0.1.6

Note on sorted tables: the SDK's error message says "requires 5.3.5+", but the check in 1.3.9 and later only tests for 5.3 (1.3.8 tested for 5.3.5). Use SDK 1.3.9 or later (see Sorted tables).

Two more checks are defined in 2.1.0 but never called, so they don't block anything: "Timezone support requires 5.4+" and "Returning row IDs requires 5.1+".

On a 5.5 cluster, Table.columns() and reload_schema() can fetch column names without their types. The SDK does this automatically.

Connectors and cluster

Trino

The VAST connector for Trino is versioned to match Trino:

Trino VAST Trino connector VAST Cluster
478 478 5.5
475 475 5.4 and later
462 462 5.3 and later
443 443 5.2 and later
429 429 5.1 and later
420 420 5.0 and later
375 375 4.7 and later

VAST Cluster 5.5.0 also supports Trino 478 query engines. See Installing and configuring the VAST connector for Trino.

Spark

Versions depend on where Spark runs:

Setup Spark Scala Java Python VAST connector
Your own Spark cluster (KB) 3.5.1 2.13 8, 11 or 17 3.7+ Not stated
Clients of Spark running on the cluster as a managed application (KB) 3.4.1, to match the cluster 2.13 Not stated — spark3-vast-3.4.1-f93839bfa38a

These are 5.5 KB pages.

ADBC driver

The ADBC driver runs on Linux x86_64. No driver version or cluster pairing is published. See VAST Query Engine (ADBC).

See also