Skip to content

fix: Preserve request source schema additions and removals - #6823

Open
Arnavsharma2 wants to merge 1 commit into
feast-dev:masterfrom
Arnavsharma2:codex/fix-request-source-schema-updates
Open

fix: Preserve request source schema additions and removals#6823
Arnavsharma2 wants to merge 1 commit into
feast-dev:masterfrom
Arnavsharma2:codex/fix-request-source-schema-updates

Conversation

@Arnavsharma2

@Arnavsharma2 Arnavsharma2 commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

What this PR does:

RequestSource.__eq__ compares schemas with zip, so schemas with the same prefix but different lengths compare equal. File and SQL registries then silently skip the update during FeatureStore.apply().

Compare the complete schema lists so added and removed fields are persisted. Existing field-order, field-value, and source-metadata comparisons are preserved.

Which issue(s) this PR fixes:

No existing issue.

Checks

  • Targeted tests pass.
  • Commits are signed off (git commit -s).
  • PR title follows conventional commits.

Tests

Ran and passed 90 unit tests across data sources, FeatureStore, file/SQL registries, on-demand feature views, and registry diffs.

The added regressions produced 10 failures and 6 passes before the fix.

Misc

AI assistance: Investigated and helped implement this change.

Release note: Request source schema additions and removals are now persisted when reapplied to file and SQL registries.

Signed-off-by: Arnav Sharma <73969466+Arnavsharma2@users.noreply.github.com>
@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 47.08%. Comparing base (81e1546) to head (6857663).
❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #6823      +/-   ##
==========================================
- Coverage   47.08%   47.08%   -0.01%     
==========================================
  Files         419      419              
  Lines       51877    51873       -4     
  Branches     7525     7523       -2     
==========================================
- Hits        24428    24426       -2     
+ Misses      25700    25699       -1     
+ Partials     1749     1748       -1     
Flag Coverage Δ *Carryforward flag
go-feature-server 30.58% <ø> (ø)
python-unit 48.39% <ø> (-0.01%) ⬇️ Carriedforward from 81e1546

*This pull request uses carry forward flags. Click here to find out more.

Files with missing lines Coverage Δ
sdk/python/feast/data_source.py 81.51% <ø> (+0.41%) ⬆️

Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 81e1546...6857663. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@Arnavsharma2
Arnavsharma2 marked this pull request as ready for review September 10, 2026 00:04
@Arnavsharma2
Arnavsharma2 requested a review from a team as a code owner September 10, 2026 00:04
Copilot AI lite review requested due to automatic review settings September 10, 2026 00:04

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants