Skip to content

Commit a65800c

Browse files
authored
Fix get_online_features return schema (#1455)
Signed-off-by: Jacob Klegar <jacob@tecton.ai>
1 parent b60f6e4 commit a65800c

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

sdk/python/feast/online_response.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ def to_dict(self) -> Dict[str, Any]:
5151
"""
5252
Converts GetOnlineFeaturesResponse features into a dictionary form.
5353
"""
54-
fields = [k for row in self.field_values for k, _ in row.fields.items()]
54+
fields = [k for row in self.field_values for k, _ in row.statuses.items()]
5555
features_dict: Dict[str, List[Any]] = {k: list() for k in fields}
5656

5757
for row in self.field_values:

sdk/python/tests/test_online_retrieval.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,14 @@ def test_online() -> None:
107107
assert result["customer_profile__name"] == ["John", "John"]
108108
assert result["customer_driver_combined__trips"] == [7, 7]
109109

110+
# Ensure features are still in result when keys not found
111+
result = store.get_online_features(
112+
feature_refs=["customer_driver_combined:trips"],
113+
entity_rows=[{"driver": 0, "customer": 0}],
114+
).to_dict()
115+
116+
assert "customer_driver_combined__trips" in result
117+
110118
# invalid table reference
111119
with pytest.raises(ValueError):
112120
store.get_online_features(

0 commit comments

Comments
 (0)