Skip to content

Add VECTOR and BSON data types support#19

Merged
okramarenko merged 19 commits into
masterfrom
proper_vector_bson
May 26, 2026
Merged

Add VECTOR and BSON data types support#19
okramarenko merged 19 commits into
masterfrom
proper_vector_bson

Conversation

@okramarenko
Copy link
Copy Markdown
Collaborator

@okramarenko okramarenko commented May 26, 2026

The original PR was accidentally opened/merged against branch add10support instead of master. Since add10support had already been merged previously, these changes did not land on master. This PR reapplies the same change set to the correct target

@cursor
Copy link
Copy Markdown

cursor Bot commented May 26, 2026

PR Summary

Medium Risk
Touches protocol column parsing, connection open/reset session setup, and parameter/type inference across the ADO.NET stack; behavior changes when extended metadata is on (default) but legacy fallback remains when disabled or on old servers.

Overview
Adds first-class VECTOR and BSON support via SingleStore extended column metadata, controlled by a new EnableExtendedDataTypes connection option (default true).

On connect (and after reset), supported servers get SET SESSION enable_extended_types_metadata = TRUE; older servers fall back unless the option was explicitly enabled, in which case open fails. ColumnDefinitionPayload now parses extended type codes and vector dimensions/element types; readers return typed ReadOnlyMemory<T> for vectors and byte[] for BSON. SingleStoreDbType.Bson / Vector, schema (SingleStoreDbColumn), parameters, and bulk copy (including UNHEX + :>VECTOR / :>BSON mappings) are wired through. Numeric arrays infer Vector parameters; byte[] stays blob unless the type is set explicitly. Docs and integration tests cover usage, legacy metadata when disabled, and reset behavior.

Reviewed by Cursor Bugbot for commit ddf7f94. Configure here.

@okramarenko okramarenko merged commit 094f1cb into master May 26, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants