Skip to content

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

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

Arnavsharma2 wants to merge 3 commits 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

codecov-commenter commented Sep 9, 2026

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.18%. Comparing base (922db5c) to head (88c869a).
❗ 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.11%   47.18%   +0.06%     
==========================================
  Files         419      419              
  Lines       51886    51883       -3     
  Branches     7528     7526       -2     
==========================================
+ Hits        24448    24480      +32     
+ Misses      25688    25656      -32     
+ Partials     1750     1747       -3     
Flag Coverage Δ
go-feature-server 30.58% <ø> (ø)
python-unit 48.49% <100.00%> (+0.06%) ⬆️
Files with missing lines Coverage Δ
sdk/python/feast/data_source.py 81.57% <100.00%> (+0.47%) ⬆️

... and 7 files with indirect coverage changes


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 922db5c...88c869a. 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