Skip to content

fix: Isolate projection join key maps - #6730

Open
Nikhi00718 wants to merge 1 commit into
feast-dev:masterfrom
Nikhi00718:fix/independent-projection-join-key-map
Open

fix: Isolate projection join key maps#6730
Nikhi00718 wants to merge 1 commit into
feast-dev:masterfrom
Nikhi00718:fix/independent-projection-join-key-map

Conversation

@Nikhi00718

@Nikhi00718 Nikhi00718 commented Aug 12, 2026

Copy link
Copy Markdown

What this PR does / why we need it:

FeatureViewProjection.join_key_map previously used a dictionary created at class definition time. Projections constructed without an explicit mapping therefore shared that dictionary, so mutating one projection's entity remapping could leak into an unrelated feature view projection.

This change uses an attrs dictionary factory to give every projection its own mapping and adds a regression test that mutates one projection and verifies another remains empty.

Which issue(s) this PR fixes:

No existing issue or pull request matched this bug. The draft PR starts the discussion as allowed by Feast's contribution guide.

Checks

  • I've made sure the focused regression test is passing.
  • My commits are signed off (git commit -s)
  • My PR title follows conventional commits format

Testing Strategy

  • Unit tests
  • Integration tests
  • Manual tests
  • Testing is not required for this change

Validation performed:

  • uvx ruff check sdk/python/feast/feature_view_projection.py sdk/python/tests/unit/test_feature_service.py
  • uvx ruff format --check sdk/python/feast/feature_view_projection.py sdk/python/tests/unit/test_feature_service.py
  • isolated execution of the new projection regression test ? 1 passed

The repository's complete dependency environment was not available locally, so that limitation is documented here and the standard unit file is left for CI.

Misc

Release note

Fix feature view projections sharing a mutable default join-key mapping.

AI assistance disclosure

I identified and reproduced the issue, then used OpenAI Codex to assist with the implementation and regression-test work. I personally reviewed the resulting diff and ran the validation commands listed above to verify the fix. Any full-suite or local-environment limitations are documented in the validation section.

Signed-off-by: NIKHIL <atnikhil06@gmail.com>
@Nikhi00718
Nikhi00718 marked this pull request as ready for review August 12, 2026 12:29
@Nikhi00718
Nikhi00718 requested a review from a team as a code owner August 12, 2026 12:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant