Undefined features should be rejected when being fetched via get_historical_features
/ get_online_features
#2576
Labels
get_historical_features
/ get_online_features
#2576
Context
I want to create versioned feature views. Through various versions, features could be added or removed.
Expected Behavior
When doing
feast.get_historical_features
, features that are not defined should be rejected.Current Behavior
The features get returned even though they have not been defined.
Steps to reproduce
feast apply
I do not expect the following to work:
But I do get results:
I do not expect this to work because
driver_hourly_stats_v1:conv_rate
anddriver_hourly_stats_v1:acc_rate
were not defined in thedriver_hourly_stats_view_v1
FeatureView.And just to double check that
driver_hourly_stats_v1
only hasavg_daily_trips
defined:Specifications
Possible Solution
The list of features being passed in should be checked against the registry. Currently the feature view name and feature name pairs are not validated together. Here's an example that modifies
get_historical_features
:This returns:
This doesn't handle the case when a
FeatureService
is passed in but it shouldn't be too hard.This should also apply to
get_online_features
.The text was updated successfully, but these errors were encountered: