Skip to content

Commit efb203e

Browse files
committed
Fix Serving after unnesting FeatureSet from Serving protos
1 parent 9618bb0 commit efb203e

4 files changed

Lines changed: 18 additions & 18 deletions

File tree

serving/src/main/java/feast/serving/service/RedisServingService.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
import feast.serving.ServingAPIProto.GetJobResponse;
3232
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest;
3333
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest.EntityRow;
34-
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest.FeatureSet;
34+
import feast.serving.ServingAPIProto.FeatureSetRequest;
3535
import feast.serving.ServingAPIProto.GetOnlineFeaturesResponse;
3636
import feast.serving.ServingAPIProto.GetOnlineFeaturesResponse.FieldValues;
3737
import feast.storage.RedisProto.RedisKey;
@@ -82,8 +82,8 @@ public GetOnlineFeaturesResponse getOnlineFeatures(GetOnlineFeaturesRequest requ
8282
entityRows.stream()
8383
.collect(Collectors.toMap(er -> er, er -> Maps.newHashMap(er.getFieldsMap())));
8484

85-
List<FeatureSet> featureSetRequests = request.getFeatureSetsList();
86-
for (FeatureSet featureSetRequest : featureSetRequests) {
85+
List<FeatureSetRequest> featureSetRequests = request.getFeatureSetsList();
86+
for (FeatureSetRequest featureSetRequest : featureSetRequests) {
8787

8888
FeatureSetSpec featureSetSpec =
8989
specService.getFeatureSet(featureSetRequest.getName(), featureSetRequest.getVersion());
@@ -139,7 +139,7 @@ public GetJobResponse getJob(GetJobRequest getJobRequest) {
139139
private List<RedisKey> getRedisKeys(
140140
List<String> featureSetEntityNames,
141141
List<EntityRow> entityRows,
142-
FeatureSet featureSetRequest) {
142+
FeatureSetRequest featureSetRequest) {
143143
try (Scope scope = tracer.buildSpan("Redis-makeRedisKeys").startActive(true)) {
144144
String featureSetId =
145145
String.format("%s:%s", featureSetRequest.getName(), featureSetRequest.getVersion());
@@ -182,7 +182,7 @@ private void sendAndProcessMultiGet(
182182
List<RedisKey> redisKeys,
183183
List<EntityRow> entityRows,
184184
Map<EntityRow, Map<String, Value>> featureValuesMap,
185-
FeatureSet featureSetRequest)
185+
FeatureSetRequest featureSetRequest)
186186
throws InvalidProtocolBufferException {
187187

188188
List<byte[]> jedisResps = sendMultiGet(redisKeys);
@@ -217,7 +217,7 @@ private void sendAndProcessMultiGet(
217217
}
218218

219219
private boolean isStale(
220-
FeatureSet featureSetRequest, EntityRow entityRow, FeatureRow featureRow) {
220+
FeatureSetRequest featureSetRequest, EntityRow entityRow, FeatureRow featureRow) {
221221
if (featureSetRequest.getMaxAge() == Duration.getDefaultInstance()) {
222222
return false;
223223
}

serving/src/main/java/feast/serving/util/BigQueryUtil.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import com.mitchellbosecke.pebble.template.PebbleTemplate;
66
import feast.core.FeatureSetProto.EntitySpec;
77
import feast.core.FeatureSetProto.FeatureSetSpec;
8-
import feast.serving.ServingAPIProto.GetBatchFeaturesRequest.FeatureSet;
8+
import feast.serving.ServingAPIProto.FeatureSetRequest;
99
import java.io.IOException;
1010
import java.io.StringWriter;
1111
import java.io.Writer;
@@ -39,7 +39,7 @@ public static String getTimestampLimitQuery(String projectId, String datasetId,
3939
}
4040

4141
public static String createQuery(
42-
List<FeatureSet> featureSets,
42+
List<FeatureSetRequest> featureSets,
4343
List<FeatureSetSpec> featureSetSpecs,
4444
List<String> entities,
4545
String projectId,
@@ -61,7 +61,7 @@ public static String createQuery(
6161
List<FeatureSetInfo> featureSetInfos = new ArrayList<>();
6262
for (int i = 0; i < featureSets.size(); i++) {
6363
FeatureSetSpec spec = featureSetSpecs.get(i);
64-
FeatureSet request = featureSets.get(i);
64+
FeatureSetRequest request = featureSets.get(i);
6565
Duration maxAge = getMaxAge(request, spec);
6666
List<String> fsEntities = spec.getEntitiesList().stream().map(EntitySpec::getName)
6767
.collect(Collectors.toList());
@@ -95,7 +95,7 @@ public static String createQueryForFeatureSets(
9595
return writer.toString();
9696
}
9797

98-
private static Duration getMaxAge(FeatureSet featureSet, FeatureSetSpec featureSetSpec) {
98+
private static Duration getMaxAge(FeatureSetRequest featureSet, FeatureSetSpec featureSetSpec) {
9999
if (featureSet.getMaxAge() == Duration.getDefaultInstance()) {
100100
return featureSetSpec.getMaxAge();
101101
}

serving/src/test/java/feast/serving/controller/ServingServiceGRpcControllerTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import feast.serving.FeastProperties;
88
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest;
99
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest.EntityRow;
10-
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest.FeatureSet;
10+
import feast.serving.ServingAPIProto.FeatureSetRequest;
1111
import feast.serving.ServingAPIProto.GetOnlineFeaturesResponse;
1212
import feast.serving.service.ServingService;
1313
import feast.types.ValueProto.Value;
@@ -37,7 +37,7 @@ public void setUp() {
3737
initMocks(this);
3838

3939
validRequest = GetOnlineFeaturesRequest.newBuilder()
40-
.addFeatureSets(FeatureSet.newBuilder()
40+
.addFeatureSets(FeatureSetRequest.newBuilder()
4141
.setName("featureSet")
4242
.setVersion(1)
4343
.addAllFeatureNames(Lists.newArrayList("feature1", "feature2"))

serving/src/test/java/feast/serving/service/RedisServingServiceTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
import feast.core.FeatureSetProto.FeatureSetSpec;
1414
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest;
1515
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest.EntityRow;
16-
import feast.serving.ServingAPIProto.GetOnlineFeaturesRequest.FeatureSet;
16+
import feast.serving.ServingAPIProto.FeatureSetRequest;
1717
import feast.serving.ServingAPIProto.GetOnlineFeaturesResponse;
1818
import feast.serving.ServingAPIProto.GetOnlineFeaturesResponse.FieldValues;
1919
import feast.storage.RedisProto.RedisKey;
@@ -83,7 +83,7 @@ public void setUp() {
8383
@Test
8484
public void shouldReturnResponseWithValuesIfKeysPresent() {
8585
GetOnlineFeaturesRequest request = GetOnlineFeaturesRequest.newBuilder()
86-
.addFeatureSets(FeatureSet.newBuilder()
86+
.addFeatureSets(FeatureSetRequest.newBuilder()
8787
.setName("featureSet")
8888
.setVersion(1)
8989
.addAllFeatureNames(Lists.newArrayList("feature1", "feature2"))
@@ -148,7 +148,7 @@ public void shouldReturnResponseWithValuesIfKeysPresent() {
148148
public void shouldReturnResponseWithUnsetValuesIfKeysNotPresent() {
149149
// some keys not present, should have empty values
150150
GetOnlineFeaturesRequest request = GetOnlineFeaturesRequest.newBuilder()
151-
.addFeatureSets(FeatureSet.newBuilder()
151+
.addFeatureSets(FeatureSetRequest.newBuilder()
152152
.setName("featureSet")
153153
.setVersion(1)
154154
.addAllFeatureNames(Lists.newArrayList("feature1", "feature2"))
@@ -211,7 +211,7 @@ public void shouldReturnResponseWithUnsetValuesIfKeysNotPresent() {
211211
public void shouldReturnResponseWithUnsetValuesIfMaxAgeIsExceeded() {
212212
// keys present, but too stale comp. to maxAge set in request
213213
GetOnlineFeaturesRequest request = GetOnlineFeaturesRequest.newBuilder()
214-
.addFeatureSets(FeatureSet.newBuilder()
214+
.addFeatureSets(FeatureSetRequest.newBuilder()
215215
.setName("featureSet")
216216
.setVersion(1)
217217
.setMaxAge(Duration.newBuilder().setSeconds(10))
@@ -278,7 +278,7 @@ public void shouldReturnResponseWithUnsetValuesIfMaxAgeIsExceeded() {
278278
public void shouldReturnResponseWithUnsetValuesIfDefaultMaxAgeIsExceeded() {
279279
// keys present, but too stale comp. to maxAge set in featureSetSpec
280280
GetOnlineFeaturesRequest request = GetOnlineFeaturesRequest.newBuilder()
281-
.addFeatureSets(FeatureSet.newBuilder()
281+
.addFeatureSets(FeatureSetRequest.newBuilder()
282282
.setName("featureSet")
283283
.setVersion(1)
284284
.addAllFeatureNames(Lists.newArrayList("feature1", "feature2"))
@@ -344,7 +344,7 @@ public void shouldReturnResponseWithUnsetValuesIfDefaultMaxAgeIsExceeded() {
344344
public void shouldFilterOutUndesiredRows() {
345345
// requested rows less than the rows available in the featureset
346346
GetOnlineFeaturesRequest request = GetOnlineFeaturesRequest.newBuilder()
347-
.addFeatureSets(FeatureSet.newBuilder()
347+
.addFeatureSets(FeatureSetRequest.newBuilder()
348348
.setName("featureSet")
349349
.setVersion(1)
350350
.addAllFeatureNames(Lists.newArrayList("feature1"))

0 commit comments

Comments
 (0)