feat: Add SingleStore online store support for feature view versioning#6195
Open
antznette1 wants to merge 2 commits intofeast-dev:masterfrom
Open
feat: Add SingleStore online store support for feature view versioning#6195antznette1 wants to merge 2 commits intofeast-dev:masterfrom
antznette1 wants to merge 2 commits intofeast-dev:masterfrom
Conversation
Signed-off-by: antznette1 <ochiezeanthonette@gmail.com>
88a6e5b to
0de8845
Compare
Contributor
Author
|
Good day @franciscojavierarceo |
ntkathole
reviewed
Apr 1, 2026
|
|
||
| def _table_id(project: str, table: FeatureView) -> str: | ||
| return f"{project}_{table.name}" | ||
| def _table_id(project: str, table: FeatureView, enable_versioning: bool = False) -> str: |
Member
There was a problem hiding this comment.
this is going to repeat in all stores, probbaly good to move it to common utils
ntkathole
reviewed
Apr 1, 2026
| with self._get_cursor(config) as cur: | ||
| for table in tables: | ||
| _drop_table_and_index(cur, project, table) | ||
| _drop_table_and_index(cur, project, table, versioning) |
Member
There was a problem hiding this comment.
Teardown only drops current version's table, needs logic to enumerates all version numbers from the registry's version history and drops each corresponding table.
ntkathole
reviewed
Apr 1, 2026
| def _check_versioned_read_support(self, grouped_refs): | ||
| def _check_versioned_read_support(self, grouped_refs, config: RepoConfig): | ||
| """Raise an error if versioned reads are attempted on unsupported stores.""" | ||
| from feast.infra.online_stores.singlestore_online_store.singlestore import ( |
Member
There was a problem hiding this comment.
this import will break for users where singlestore optional dependency is not installed ?
ntkathole
reviewed
Apr 1, 2026
| super().__init__( | ||
| f"Versioned feature reads (@v{version}) are not yet supported by {store_name}. " | ||
| f"Currently only SQLite supports version-qualified feature references. " | ||
| f"Currently only SQLite and SingleStore support version-qualified feature references. " |
Member
There was a problem hiding this comment.
best to remove this line altogether
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What this PR does / why we need it:
This PR adds online feature view versioning support for the SingleStore online store when
registry.enable_online_feature_view_versioningis enabled.It updates SingleStore’s table routing to read/write from versioned namespaces (e.g.
{project}_{feature_view}_v{N}) so version-qualified refs likedriver_stats@v1:avg_daily_tripscan be served from the correct underlying online table. It also updates the global online-store guard to allow version-qualified reads for SingleStore (and still reject unsupported stores) when versioning is enabled.Additionally, it adds an integration/universal test covering SingleStore version-qualified reads.
Which issue(s) this PR fixes:
Fixes #6181
Checks
git commit -s)Testing Strategy
Misc
Notes:
registry.enable_online_feature_view_versioningis enabled; otherwiseVersionedOnlineReadNotSupportedis raised.