| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
DynamoDBOnlineStore has no plan() override, so it inherits OnlineStore.plan()'s no-op default: `feast plan` never reports any DynamoDB infrastructure changes, unlike SqliteOnlineStore and MilvusOnlineStore which both implement it. Adds DynamoDBTable (InfraObject) and DynamoDBOnlineStore.plan(), using the InfraObject proto's CustomInfra field (protos/feast/core/InfraObject.proto), which exists specifically so online stores can add InfraObject support without changes to the core proto -- no other in-tree store uses it yet. Note this only affects `feast plan`'s reporting: `feast apply`'s diff-based path (FeatureStore._should_use_plan(), which would call InfraObject.update()/teardown()) is gated to the local/sqlite provider only, so DynamoDBOnlineStore.update()/teardown() -- which already perform the real table creation/deletion -- are unaffected. Uses the corrected feature-view-list pattern (see feast-dev#6658 / feast-dev#6659): FeatureView.from_proto() and StreamFeatureView.from_proto() applied to their respective proto lists, not one applied to both. Signed-off-by: Carlos Sánchez <carlos.sancheza@cabify.com>
|
⚠️ Please install the Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## master #6661 +/- ##
==========================================
+ Coverage 45.93% 45.97% +0.04%
==========================================
Files 414 414
Lines 50006 50035 +29
Branches 7147 7147
==========================================
+ Hits 22972 23006 +34
+ Misses 25423 25418 -5
Partials 1611 1611
... and 2 files with indirect coverage changes Continue to review full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
What this PR does / why we need it
Fixes #6660.
DynamoDBOnlineStore doesn't override OnlineStore.plan(), so it inherits the no-op default and feast plan never reports any DynamoDB table changes. SqliteOnlineStore and MilvusOnlineStore already implement plan(); this brings DynamoDB in line.
Adds:
Uses the corrected per-list pattern from #6659 (FeatureView.from_proto() for feature_views, StreamFeatureView.from_proto() for stream_feature_views) rather than applying one function to both, which is what caused the bug in #6658.
Scope note: this only changes what feast plan reports. feast apply's diff-based path (FeatureStore._should_use_plan(), which would call InfraObject.update()/teardown()) is gated to the local/sqlite provider only today, so DynamoDBOnlineStore.update()/teardown() -- which already perform the real table creation/deletion -- are completely unaffected. feast apply behavior for DynamoDB does not change.
Which issue(s) this PR fixes
Fixes #6660
Does this PR introduce a user-facing change?
Test plan