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

ODFV UDFs should handle list types #2002

Merged
merged 7 commits into from
Nov 12, 2021

Conversation

Agent007
Copy link
Contributor

@Agent007 Agent007 commented Nov 5, 2021

ODFV UDFs handling list types (e.g., embeddings/vectors) should be registered without error.

Signed-off-by: Jeff [email protected]

What this PR does / why we need it:

Fixes a bug in which ODFV UDFs handling list types (e.g., embeddings/vectors) weren't able to be registered.

Which issue(s) this PR fixes:

Fixes #1995

Does this PR introduce a user-facing change?:

Supports list types in on demand feature view udfs.

@feast-ci-bot
Copy link
Collaborator

Hi @Agent007. Thanks for your PR.

I'm waiting for a feast-dev member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@codecov-commenter
Copy link

codecov-commenter commented Nov 5, 2021

Codecov Report

Merging #2002 (c655d1b) into master (63680ba) will decrease coverage by 0.02%.
The diff coverage is 78.72%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2002      +/-   ##
==========================================
- Coverage   83.23%   83.20%   -0.03%     
==========================================
  Files         103      103              
  Lines        8421     8467      +46     
==========================================
+ Hits         7009     7045      +36     
- Misses       1412     1422      +10     
Flag Coverage Δ
integrationtests 74.44% <78.72%> (+0.04%) ⬆️
unittests 60.16% <27.65%> (-0.19%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...tegration/feature_repos/universal/feature_views.py 83.33% <60.86%> (-13.97%) ⬇️
sdk/python/feast/type_map.py 72.66% <75.00%> (+0.06%) ⬆️
...ts/integration/feature_repos/universal/entities.py 100.00% <100.00%> (ø)
...istration/test_universal_odfv_feature_inference.py 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

@adchia
Copy link
Collaborator

adchia commented Nov 5, 2021

/ok-to-test

Copy link
Collaborator

@adchia adchia left a comment

Choose a reason for hiding this comment

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

/lgtm

@feast-ci-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: adchia, Agent007

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

@Agent007
Copy link
Contributor Author

Agent007 commented Nov 9, 2021

@adchia In addition to the aforementioned RedShift-related errors, I now see errors related to tracing_span() after rebasing the latest from the main branch. I thought FEAST_USAGE is False in the integration test environment, so I don't see how tracing_span() would raise its RuntimeError if _is_enabled is supposed to be False.
Also, FYI, in order for make test-python-universal-local pass, I added checks in test_feature_get_online_features_types_match() to see if feature is not None before making the assertions on the expected feature types. Did you intend to handle None features differently?

@judahrand
Copy link
Member

@adchia , I think your integration test environment's RedShift instance may need to be updated to recognize the SUPER data type. The RedShift-based integration tests are failing because the example test data containing array types aren't able to be saved in RedShift...

Might it be simpler to change the tests used for verifying this PR to avoid this and open a separate PR to add a test for SUPER columns? Just conscious that this ODFV list feature applies to ALL offline + online stores so not sure it makes sense to block on Redshift.

Might get both merged faster too.

@adchia
Copy link
Collaborator

adchia commented Nov 10, 2021

yep agreed with @judahrand . The main thing preventing the merge is now #2007 going in. We also had a fix for the tracing span bug that already win.

@Agent007
Copy link
Contributor Author

@judahrand Apologies for the delay. I'm juggling other tasks at work currently. Please feel free to add onto this PR branch if this is urgent for you.

@adchia
Copy link
Collaborator

adchia commented Nov 12, 2021

/lgtm

@adchia adchia merged commit b456c46 into feast-dev:master Nov 12, 2021
@Agent007 Agent007 deleted the odfv-udfs-with-list-types branch November 12, 2021 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants