GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — feat: Add feature view versioning support to Snowflake online store by Abhishek8108 · Pull Request #6380 · feast-dev/feast

Conversation

@Abhishek8108

@Abhishek8108 Abhishek8108 commented May 7, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes #6167

Adds versioned feature view read/write support to the SnowflakeOnlineStore, following the pattern already established in SqliteOnlineStore, MySQLOnlineStore, PostgreSQLOnlineStore, DynamoDBOnlineStore, RedisOnlineStore, and MilvusOnlineStore.

What changed

snowflake.py

  • Added _snowflake_table_name(project, table, enable_versioning) helper that returns "[online-transient] {project}_{name}" where name gains a _v{N} suffix when enable_online_feature_view_versioning is enabled and the feature view has a non-zero version.
  • All four write/read paths (online_write_batch, online_read, update, teardown) now call this helper instead of hardcoding f"[online-transient] {config.project}_{table.name}".

online_store.py

  • Added SnowflakeOnlineStore to the supported-types list in _check_versioned_read_support, so versioned reads no longer raise VersionedOnlineReadNotSupported.

New test file

  • tests/unit/infra/online_store/test_snowflake_versioning.py — 10 unit tests covering: no versioning, versioning disabled with a version set, versioning enabled with no version, version number suffix, version zero (no suffix), projection tag priority, projection tag zero, two different versions produce different names, and _check_versioned_read_support with/without a version tag.
  • Uses module-level stubs for cryptography, snowflake.connector, and tenacity so the tests run without the optional feast[snowflake] extras.

Reference

  • Reference implementation: sdk/python/feast/infra/online_stores/sqlite.py
  • Linked issue: Add feature view versioning support to Snowflake online store #6167 (part of Improved feature view and model versioning #2728)

Test plan

  • python -m pytest sdk/python/tests/unit/infra/online_store/test_snowflake_versioning.py — 10/10 passed locally
  • ruff format --check and ruff check — clean on all modified files
  • Existing Snowflake table name behaviour is unchanged when enable_online_feature_view_versioning = False (the default)

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@Abhishek8108
Abhishek8108 requested review from a team as code owners May 7, 2026 18:49
@Abhishek8108
Abhishek8108 requested review from franciscojavierarceo, nquinn408 and shuchu and removed request for a team May 7, 2026 18:49
@Abhishek8108
feat: Add feature view versioning support to Snowflake online store
977034b
Introduces `_snowflake_table_name()` helper that appends a `_v{N}` suffix
when `enable_online_feature_view_versioning` is set, routing write_batch,
online_read, update, and teardown to the correct versioned transient table.
Registers SnowflakeOnlineStore in the supported-types list so versioned reads
do not raise VersionedOnlineReadNotSupported. Unit tests follow the same
pattern as the DynamoDB and Redis versioning test suites.

Closes feast-dev#6167

Signed-off-by: Abhishek8108 <[email protected]>
@Abhishek8108
Abhishek8108 force-pushed the feat/snowflake-online-store-versioning branch from 4c780b4 to 977034b Compare May 7, 2026 18:51
@Abhishek8108 Abhishek8108 mentioned this pull request May 9, 2026
Proposal: Version-qualified feature refs in get_historical_features (offline store versioning) #6389
Open

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@shuchu shuchu Awaiting requested review from shuchu shuchu is a code owner automatically assigned from feast-dev/maintainers
@franciscojavierarceo franciscojavierarceo Awaiting requested review from franciscojavierarceo franciscojavierarceo is a code owner automatically assigned from feast-dev/maintainers
@nquinn408 nquinn408 Awaiting requested review from nquinn408 nquinn408 is a code owner automatically assigned from feast-dev/maintainers

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Add feature view versioning support to Snowflake online store

Uh oh!

There was an error while loading. Please reload this page.

1 participant

@Abhishek8108
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.