Skip to content

Conversation

@arnaud-lacurie
Copy link
Collaborator

Enables inserting vector data types through the relational Direct Access API with full validation:

  • Type checking ensures vectors match column precision (FLOAT/16, HALF/32, DOUBLE/64)
  • Dimension validation verifies vector size matches schema definition
  • Null/empty vector handling for optional vector columns
  • Comprehensive test coverage via InsertVectorTest for all insert scenarios

Also refactors vector parsing logic into VectorUtils.parseVector() to eliminate code duplication across MessageTuple and FRL.

Enables inserting vector data types through the relational Direct Access API with full validation:
- Type checking ensures vectors match column precision (FLOAT/16, HALF/32, DOUBLE/64)
- Dimension validation verifies vector size matches schema definition
- Null/empty vector handling for optional vector columns
- Comprehensive test coverage via InsertVectorTest for all insert scenarios

Also refactors vector parsing logic into VectorUtils.parseVector() to eliminate code duplication across MessageTuple and FRL.
@arnaud-lacurie arnaud-lacurie added the enhancement New feature or request label Nov 7, 2025
Copy link
Contributor

@hatyo hatyo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

hatyo added 3 commits November 7, 2025 14:38
- before current version, (particularly, version 4.8.11.0) we allow inserting
  vectors of incompatible precision and dimensions.
- fix the tests to reflect that.
- fix a problem with JDBC handling of `null` vector value.
@hatyo hatyo merged commit e2882db into FoundationDB:main Nov 7, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants