Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix implicit feature set version retrieval #441

Merged

Conversation

khorshuheng
Copy link
Collaborator

@khorshuheng khorshuheng commented Jan 25, 2020

What this PR does / why we need it:
In release 4.0 we have introduced implicit version retrieval, where latest version of a feature set will be retrieved if no version is explicitly specified. This feature didn't work as intended, as the feature to feature ref map is incorrectly updated.

Does this PR introduce a user-facing change?:
Implicit version retrieval should work as intended after this fix, for both batch and online retrieval.

@khorshuheng khorshuheng changed the title Exclude version from grouping Fix implicit feature set version retrieval Jan 25, 2020
@ches
Copy link
Member

ches commented Jan 26, 2020

Is it worth having a test that would have caught the issue?

@khorshuheng
Copy link
Collaborator Author

@ches Certainly, let me make unit tests as part of the scope of this PR as well.

@khorshuheng
Copy link
Collaborator Author

/hold

@zhilingc
Copy link
Collaborator

Does this preserve the functionality of being able to retrieve with OR without version?

@khorshuheng
Copy link
Collaborator Author

/unhold

@khorshuheng
Copy link
Collaborator Author

Does this preserve the functionality of being able to retrieve with OR without version?

Yes, it does preserve the functionality.

@khorshuheng
Copy link
Collaborator Author

Is it worth having a test that would have caught the issue?

Turns out that there is already a test for this: https://github.com/gojek/feast/blob/ff9bb75283cbb2a61a0add8a852ce4c9cfac4ddd/serving/src/test/java/feast/serving/service/CachedSpecServiceTest.java#L217

The reason this is not being caught, is that if https://github.com/gojek/feast/blob/ff9bb75283cbb2a61a0add8a852ce4c9cfac4ddd/serving/src/main/java/feast/serving/specs/CachedSpecService.java#L200 returns the stream in an order already sorted based on version, then the resultant map will still be accurate.

I am not sure how to mock this behaviour, so perhaps the fix to the unit test should be another PR as it requires a lot more thoughts.

@zhilingc
Copy link
Collaborator

zhilingc commented Feb 4, 2020

/lgtm

@khorshuheng
Copy link
Collaborator Author

/approve

1 similar comment
@zhilingc
Copy link
Collaborator

/approve

@feast-ci-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: khorshuheng, zhilingc

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@feast-ci-bot feast-ci-bot merged commit 98b6be4 into feast-dev:master Feb 10, 2020
khorshuheng added a commit to khorshuheng/feast that referenced this pull request Feb 14, 2020
@khorshuheng khorshuheng mentioned this pull request Feb 14, 2020
khorshuheng added a commit that referenced this pull request Feb 14, 2020
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