diff --git a/core/pom.xml b/core/pom.xml
index 12574876d7..e4c63bf845 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -19,14 +19,15 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
+
feast
feast-parent
${revision}
- feast-core
- jar
+
Feast Core
+ feast-core
@@ -78,46 +79,32 @@
-
-
- jcenter
- https://jcenter.bintray.com/
-
-
- jitpack.io
- https://jitpack.io
-
-
-
- com.github.gojek.feast
+ feast
feast-ingestion
- 9428b230a5
+ ${project.version}
+
+
+
+ javax.inject
+ javax.inject
+ 1
org.springframework.boot
spring-boot-starter-web
- ${springBootVersion}
-
-
- org.springframework.boot
- spring-boot-starter-logging
-
-
org.springframework.boot
spring-boot-starter-log4j2
- ${springBootVersion}
org.lognet
grpc-spring-boot-starter
- 2.4.1
@@ -129,47 +116,35 @@
org.springframework.boot
spring-boot-starter-actuator
- ${springBootVersion}
org.springframework.boot
spring-boot-configuration-processor
- ${springBootVersion}
-
-
- io.grpc
- grpc-netty
- ${grpcVersion}
-
io.grpc
grpc-services
- ${grpcVersion}
io.grpc
grpc-stub
- ${grpcVersion}
com.google.protobuf
protobuf-java-util
- ${protobufVersion}
com.google.guava
guava
- 26.0-jre
@@ -177,18 +152,6 @@
gson
2.8.5
-
-
- commons-codec
- commons-codec
- 1.10
-
-
-
- joda-time
- joda-time
- 2.9.9
-
com.google.api-client
google-api-client
@@ -200,153 +163,28 @@
v1b3-rev266-1.25.0
-
-
- org.jdbi
- jdbi3
- 3.0.0-beta2
-
-
-
- org.jdbi
- jdbi3-sqlobject
- 3.4.0
-
-
-
- org.postgresql
- postgresql
- 42.2.5
-
org.hibernate
hibernate-core
5.3.6.Final
-
-
- com.google.cloud.bigtable
- bigtable-hbase-2.x-shaded
- 1.5.0
-
-
-
- com.google.cloud
- google-cloud-bigquery
- 1.48.0
-
-
- com.google.cloud
- google-cloud-nio
- 0.83.0-alpha
-
-
- org.apache.flink
- flink-clients_2.11
- 1.5.5
-
-
-
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.9.9.1
-
-
- com.fasterxml.jackson.core
- jackson-core
- 2.9.9
-
-
- com.fasterxml.jackson.core
- jackson-annotations
- 2.9.9
-
-
- com.fasterxml.jackson.dataformat
- jackson-dataformat-yaml
- 2.9.9
-
-
-
-
- com.github.spullara.mustache.java
- compiler
- 0.9.5
-
-
- com.hubspot.jinjava
- jinjava
- 2.4.12
-
-
-
- com.fasterxml.jackson.core
- jackson-databind
-
-
- com.fasterxml.jackson.core
- jackson-core
-
-
- com.fasterxml.jackson.core
- jackson-annotations
-
-
-
-
-
- io.micrometer
- micrometer-core
- 1.0.7
-
-
-
- io.micrometer
- micrometer-registry-statsd
- 1.0.7
-
-
- com.datadoghq
- java-dogstatsd-client
- 2.6.1
-
org.apache.kafka
kafka-clients
- 2.3.0
-
-
-
-
- org.apache.commons
- commons-exec
- 1.3
org.projectlombok
lombok
- 1.18.2
- provided
-
-
- io.grpc
- grpc-testing
- ${grpcVersion}
- test
-
org.hamcrest
hamcrest-all
- 1.3
- test
@@ -362,36 +200,14 @@
2.23.0
test
-
- com.squareup.okhttp3
- mockwebserver
- 3.11.0
- test
-
-
- org.springframework
- spring-test
- 5.0.8.RELEASE
- test
-
org.springframework.boot
spring-boot-test
- ${springBootVersion}
- test
org.springframework.boot
spring-boot-test-autoconfigure
- ${springBootVersion}
- test
-
-
- com.h2database
- h2
- 1.4.198
- test
diff --git a/core/src/main/java/feast/core/job/dataflow/DataflowJobManager.java b/core/src/main/java/feast/core/job/dataflow/DataflowJobManager.java
index 13767a20ea..d94ed6118d 100644
--- a/core/src/main/java/feast/core/job/dataflow/DataflowJobManager.java
+++ b/core/src/main/java/feast/core/job/dataflow/DataflowJobManager.java
@@ -17,8 +17,6 @@
package feast.core.job.dataflow;
-import static com.google.common.base.Preconditions.checkNotNull;
-
import com.google.api.services.dataflow.Dataflow;
import com.google.api.services.dataflow.model.Job;
import com.google.common.base.Strings;
@@ -35,7 +33,7 @@
import feast.core.model.JobInfo;
import feast.core.util.TypeConversion;
import feast.ingestion.ImportJob;
-import feast.ingestion.options.ImportJobPipelineOptions;
+import feast.ingestion.options.ImportOptions;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
@@ -128,7 +126,7 @@ public void abortJob(String dataflowJobId) {
private String submitDataflowJob(String jobName, List featureSets, Store sink, boolean update) {
try {
- ImportJobPipelineOptions pipelineOptions = getPipelineOptions(jobName, featureSets, sink, update);
+ ImportOptions pipelineOptions = getPipelineOptions(jobName, featureSets, sink, update);
DataflowPipelineJob pipelineResult = runPipeline(pipelineOptions);
String jobId = waitForJobToRun(pipelineResult);
return jobId;
@@ -138,11 +136,10 @@ private String submitDataflowJob(String jobName, List featureSet
}
}
- private ImportJobPipelineOptions getPipelineOptions(String jobName, List featureSets, Store sink,
+ private ImportOptions getPipelineOptions(String jobName, List featureSets, Store sink,
boolean update) throws InvalidProtocolBufferException {
String[] args = TypeConversion.convertMapToArgs(defaultOptions);
- ImportJobPipelineOptions pipelineOptions = PipelineOptionsFactory.fromArgs(args)
- .as(ImportJobPipelineOptions.class);
+ ImportOptions pipelineOptions = PipelineOptionsFactory.fromArgs(args).as(ImportOptions.class);
Printer printer = JsonFormat.printer();
List featureSetsJson = new ArrayList<>();
for (FeatureSetSpec featureSet : featureSets) {
@@ -164,7 +161,7 @@ private ImportJobPipelineOptions getPipelineOptions(String jobName, List featureSetSpecs,
StoreProto.Store sinkSpec) {
try {
- ImportJobPipelineOptions pipelineOptions = getPipelineOptions(featureSetSpecs, sinkSpec);
+ ImportOptions pipelineOptions = getPipelineOptions(featureSetSpecs, sinkSpec);
PipelineResult pipelineResult = runPipeline(pipelineOptions);
DirectJob directJob = new DirectJob(name, pipelineResult);
jobs.add(directJob);
@@ -85,12 +85,11 @@ public String startJob(String name, List featureSetSpecs,
}
}
- private ImportJobPipelineOptions getPipelineOptions(List featureSetSpecs,
+ private ImportOptions getPipelineOptions(List featureSetSpecs,
StoreProto.Store sink)
throws InvalidProtocolBufferException {
String[] args = TypeConversion.convertMapToArgs(defaultOptions);
- ImportJobPipelineOptions pipelineOptions = PipelineOptionsFactory.fromArgs(args)
- .as(ImportJobPipelineOptions.class);
+ ImportOptions pipelineOptions = PipelineOptionsFactory.fromArgs(args).as(ImportOptions.class);
Printer printer = JsonFormat.printer();
List featureSetsJson = new ArrayList<>();
for (FeatureSetSpec featureSetSpec : featureSetSpecs) {
@@ -136,7 +135,7 @@ public void abortJob(String extId) {
jobs.remove(extId);
}
- public PipelineResult runPipeline(ImportJobPipelineOptions pipelineOptions)
+ public PipelineResult runPipeline(ImportOptions pipelineOptions)
throws IOException {
return ImportJob.runPipeline(pipelineOptions);
}
diff --git a/core/src/test/java/feast/core/job/dataflow/DataflowJobManagerTest.java b/core/src/test/java/feast/core/job/dataflow/DataflowJobManagerTest.java
index 4aad1de0c2..ba017aa2fd 100644
--- a/core/src/test/java/feast/core/job/dataflow/DataflowJobManagerTest.java
+++ b/core/src/test/java/feast/core/job/dataflow/DataflowJobManagerTest.java
@@ -37,7 +37,7 @@
import feast.core.StoreProto.Store.StoreType;
import feast.core.config.FeastProperties.MetricsProperties;
import feast.core.exception.JobExecutionException;
-import feast.ingestion.options.ImportJobPipelineOptions;
+import feast.ingestion.options.ImportOptions;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@@ -93,8 +93,8 @@ public void shouldStartJobWithCorrectPipelineOptions() throws IOException {
String expectedExtJobId = "feast-job-0";
String jobName = "job";
- ImportJobPipelineOptions expectedPipelineOptions = PipelineOptionsFactory.fromArgs("")
- .as(ImportJobPipelineOptions.class);
+ ImportOptions expectedPipelineOptions = PipelineOptionsFactory.fromArgs("")
+ .as(ImportOptions.class);
expectedPipelineOptions.setRunner(DataflowRunner.class);
expectedPipelineOptions.setProject("project");
expectedPipelineOptions.setRegion("region");
@@ -105,8 +105,8 @@ public void shouldStartJobWithCorrectPipelineOptions() throws IOException {
expectedPipelineOptions
.setFeatureSetSpecJson(Lists.newArrayList(printer.print(featureSetSpec)));
- ArgumentCaptor captor = ArgumentCaptor
- .forClass(ImportJobPipelineOptions.class);
+ ArgumentCaptor captor = ArgumentCaptor
+ .forClass(ImportOptions.class);
DataflowPipelineJob mockPipelineResult = Mockito.mock(DataflowPipelineJob.class);
when(mockPipelineResult.getState()).thenReturn(State.RUNNING);
@@ -116,7 +116,7 @@ public void shouldStartJobWithCorrectPipelineOptions() throws IOException {
String jobId = dfJobManager.startJob(jobName, Lists.newArrayList(featureSetSpec), store);
verify(dfJobManager, times(1)).runPipeline(captor.capture());
- ImportJobPipelineOptions actualPipelineOptions = captor.getValue();
+ ImportOptions actualPipelineOptions = captor.getValue();
expectedPipelineOptions.setOptionsId(actualPipelineOptions.getOptionsId()); // avoid comparing this value
diff --git a/core/src/test/java/feast/core/job/direct/DirectRunnerJobManagerTest.java b/core/src/test/java/feast/core/job/direct/DirectRunnerJobManagerTest.java
index c89f758b9e..93f2519c38 100644
--- a/core/src/test/java/feast/core/job/direct/DirectRunnerJobManagerTest.java
+++ b/core/src/test/java/feast/core/job/direct/DirectRunnerJobManagerTest.java
@@ -17,7 +17,7 @@
import feast.core.StoreProto.Store.RedisConfig;
import feast.core.StoreProto.Store.StoreType;
import feast.core.config.FeastProperties.MetricsProperties;
-import feast.ingestion.options.ImportJobPipelineOptions;
+import feast.ingestion.options.ImportOptions;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@@ -68,8 +68,8 @@ public void shouldStartDirectJobAndRegisterPipelineResult() throws IOException {
Printer printer = JsonFormat.printer();
- ImportJobPipelineOptions expectedPipelineOptions = PipelineOptionsFactory.fromArgs("")
- .as(ImportJobPipelineOptions.class);
+ ImportOptions expectedPipelineOptions = PipelineOptionsFactory.fromArgs("")
+ .as(ImportOptions.class);
expectedPipelineOptions.setAppName("DirectRunnerJobManager");
expectedPipelineOptions.setRunner(DirectRunner.class);
expectedPipelineOptions.setBlockOnRun(false);
@@ -78,8 +78,8 @@ public void shouldStartDirectJobAndRegisterPipelineResult() throws IOException {
.setFeatureSetSpecJson(Lists.newArrayList(printer.print(featureSetSpec)));
String expectedJobId = "feast-job-0";
- ArgumentCaptor pipelineOptionsCaptor = ArgumentCaptor
- .forClass(ImportJobPipelineOptions.class);
+ ArgumentCaptor pipelineOptionsCaptor = ArgumentCaptor
+ .forClass(ImportOptions.class);
ArgumentCaptor directJobCaptor = ArgumentCaptor
.forClass(DirectJob.class);
@@ -90,7 +90,7 @@ public void shouldStartDirectJobAndRegisterPipelineResult() throws IOException {
verify(drJobManager, times(1)).runPipeline(pipelineOptionsCaptor.capture());
verify(directJobRegistry, times(1)).add(directJobCaptor.capture());
- ImportJobPipelineOptions actualPipelineOptions = pipelineOptionsCaptor.getValue();
+ ImportOptions actualPipelineOptions = pipelineOptionsCaptor.getValue();
DirectJob jobStarted = directJobCaptor.getValue();
expectedPipelineOptions.setOptionsId(actualPipelineOptions.getOptionsId()); // avoid comparing this value
diff --git a/ingestion/pom.xml b/ingestion/pom.xml
index 8bfbec7dc7..d79637ecbd 100644
--- a/ingestion/pom.xml
+++ b/ingestion/pom.xml
@@ -19,63 +19,21 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
- feast
- ${revision}
- feast-ingestion
- jar
- Feast Ingestion
-
- 0.3.0-SNAPSHOT
- UTF-8
+
+ feast
+ feast-parent
+ ${revision}
+
- 2.16.0
- 1.91.0
- 1.21.1
- 3.6.1
- 3.6.1
-
+ Feast Ingestion
+ feast-ingestion
-
-
- kr.motd.maven
- os-maven-plugin
- 1.6.0
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.7.0
-
-
- 1.8
-
-
org.xolstice.maven.plugins
protobuf-maven-plugin
- 0.5.1
-
-
- com.google.protobuf:protoc:${protocVersion}:exe:${os.detected.classifier}
-
- grpc-java
-
- io.grpc:protoc-gen-grpc-java:${grpcVersion}:exe:${os.detected.classifier}
-
-
-
-
-
- compile
- compile-custom
- test-compile
-
-
-
org.apache.maven.plugins
@@ -131,17 +89,12 @@
org.apache.maven.plugins
maven-javadoc-plugin
- 3.0.1
attach-javadocs
jar
-
-
- none
-
@@ -155,6 +108,12 @@
3.0.0
+
+ javax.validation
+ validation-api
+ 2.0.1.Final
+
+
org.hibernate.validator
hibernate-validator
@@ -173,60 +132,62 @@
provided
-
-
- com.google.cloud
- google-cloud-nio
- 0.83.0-alpha
-
-
io.grpc
grpc-stub
- 1.21.1
com.google.cloud
google-cloud-storage
- ${com.google.cloud.version}
com.google.cloud
google-cloud-bigquery
- ${com.google.cloud.version}
-
+
+ org.hamcrest
+ hamcrest-core
+
org.hamcrest
hamcrest-library
- 1.3
- test
org.mockito
mockito-core
- 2.28.2
- test
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+
+
+ com.fasterxml.jackson.core
+ jackson-core
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
com.fasterxml.jackson.dataformat
jackson-dataformat-yaml
- 2.9.9
com.fasterxml.jackson.module
jackson-module-jsonSchema
- 2.9.9
com.google.protobuf
protobuf-java
- ${protobufVersion}
+
+
+ com.google.protobuf
+ protobuf-java-util
@@ -239,7 +200,6 @@
joda-time
joda-time
- 2.9.9
@@ -260,16 +220,9 @@
${org.apache.beam.version}
-
- org.apache.kafka
- kafka_2.12
- 2.3.0
-
-
redis.clients
jedis
- 3.1.0
io.prometheus
@@ -279,8 +232,11 @@
org.projectlombok
lombok
- 1.16.22
- provided
+
+
+
+ org.slf4j
+ slf4j-api
@@ -289,30 +245,13 @@
ch.qos.logback
logback-classic
1.2.3
-
-
-
-
- com.fasterxml.jackson.dataformat
- jackson-dataformat-csv
- 2.9.6
- test
-
-
-
- com.github.kstyrc
- embedded-redis
- 0.6
- test
+ runtime
com.google.guava
guava
- 26.0-jre
- compile
-
diff --git a/ingestion/src/main/java/feast/ingestion/transform/ReadFromSource.java b/ingestion/src/main/java/feast/ingestion/transform/ReadFromSource.java
index 3c6e9c8f41..b950903844 100644
--- a/ingestion/src/main/java/feast/ingestion/transform/ReadFromSource.java
+++ b/ingestion/src/main/java/feast/ingestion/transform/ReadFromSource.java
@@ -3,7 +3,6 @@
import com.google.auto.value.AutoValue;
import com.google.common.base.Preconditions;
import com.google.protobuf.InvalidProtocolBufferException;
-import com.google.protobuf.TextFormat;
import feast.core.SourceProto.Source;
import feast.core.SourceProto.SourceType;
import feast.ingestion.values.FailedElement;
@@ -148,7 +147,7 @@ public void processElement(ProcessContext context) {
FailedElement.newBuilder()
.setTransformName("KafkaRecordToFeatureRow")
.setJobName(context.getPipelineOptions().getJobName())
- .setPayload(TextFormat.printToString(featureRow))
+ .setPayload(featureRow.toString())
.setErrorMessage(error)
.build());
} else {
diff --git a/ingestion/src/test/java/feast/store/FileStoreOptionsTest.java b/ingestion/src/test/java/feast/store/FileStoreOptionsTest.java
index dc6629bba0..562944b493 100644
--- a/ingestion/src/test/java/feast/store/FileStoreOptionsTest.java
+++ b/ingestion/src/test/java/feast/store/FileStoreOptionsTest.java
@@ -20,7 +20,6 @@
import static org.junit.Assert.assertEquals;
import com.google.common.collect.ImmutableMap;
-import feast.store.FileStoreOptions;
import org.joda.time.Duration;
import org.junit.Test;
import feast.options.OptionsParser;
diff --git a/ingestion/src/test/java/feast/store/TextFileDynamicIOTest.java b/ingestion/src/test/java/feast/store/TextFileDynamicIOTest.java
index 0a52b4bc78..5f0eedb994 100644
--- a/ingestion/src/test/java/feast/store/TextFileDynamicIOTest.java
+++ b/ingestion/src/test/java/feast/store/TextFileDynamicIOTest.java
@@ -77,7 +77,6 @@ List getAllLines(Path path) throws IOException {
List files = Files.walk(path).collect(Collectors.toList());
List lines = Lists.newArrayList();
for (Path file : files) {
- System.out.println(file);
if (file.toFile().isFile()) {
lines.addAll(Files.readAllLines(file));
}
diff --git a/ingestion/src/test/resources/logback-test.xml b/ingestion/src/test/resources/logback-test.xml
index 9a301f3bc6..429ae39aec 100644
--- a/ingestion/src/test/resources/logback-test.xml
+++ b/ingestion/src/test/resources/logback-test.xml
@@ -16,13 +16,13 @@
-->
-
+
%d{HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n
-
+
-
\ No newline at end of file
+
diff --git a/pom.xml b/pom.xml
index a8377fe951..f3735945d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -17,19 +17,35 @@
4.0.0
+
+ Feast Parent
feast
feast-parent
${revision}
pom
- Feast Parent
+
+
+ ingestion
+ core
+ serving
+ sdk/java
+
- 0.3.0
+ 0.3.0-SNAPSHOT
UTF-8
- 3.6.1
- 1.14.0
- 3.6.1
+ UTF-8
+
+ 1.17.1
+ 3.10.0
+ 3.10.0
2.0.9.RELEASE
+ 2.16.0
+ 1.91.0
+ 1.3
+ 1.0.7
+
+ 0.21.0
@@ -43,28 +59,293 @@
-
- ingestion
- core
- serving
-
+
+
+
+
+ com.google.cloud
+ google-cloud-bigquery
+ ${com.google.cloud.version}
+
+
+ com.google.cloud
+ google-cloud-storage
+ ${com.google.cloud.version}
+
+
+
+
+ com.google.cloud
+ google-cloud-nio
+ 0.83.0-alpha
+
+
+
+ io.opencensus
+ opencensus-api
+ ${opencensus.version}
+
+
+ io.opencensus
+ opencensus-contrib-grpc-util
+ ${opencensus.version}
+
+
+ io.opencensus
+ opencensus-contrib-http-util
+ ${opencensus.version}
+
+
+
+
+ io.grpc
+ grpc-netty
+ ${grpcVersion}
+
+
+ io.grpc
+ grpc-netty-shaded
+ ${grpcVersion}
+
+
+ io.grpc
+ grpc-protobuf
+ ${grpcVersion}
+
+
+ io.grpc
+ grpc-services
+ ${grpcVersion}
+
+
+ io.grpc
+ grpc-stub
+ ${grpcVersion}
+
+
+ io.grpc
+ grpc-testing
+ ${grpcVersion}
+ test
+
+
+
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+ 2.9.9
+
+
+ com.fasterxml.jackson.core
+ jackson-core
+ 2.9.9
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.9.9.1
+
+
+ com.fasterxml.jackson.dataformat
+ jackson-dataformat-csv
+ 2.9.6
+
+
+ com.fasterxml.jackson.dataformat
+ jackson-dataformat-yaml
+ 2.9.9
+
+
+ com.fasterxml.jackson.module
+ jackson-module-jsonSchema
+ 2.9.9
+
+
+
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+ ${springBootVersion}
+
+
+ org.springframework.boot
+ spring-boot-devtools
+ ${springBootVersion}
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+ ${springBootVersion}
+
+
+ org.springframework.boot
+ spring-boot-starter-log4j2
+ ${springBootVersion}
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ ${springBootVersion}
+ test
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+ ${springBootVersion}
+
+
+ org.springframework.boot
+ spring-boot-starter-logging
+
+
+
+
+ org.springframework.boot
+ spring-boot-test
+ ${springBootVersion}
+ test
+
+
+ org.springframework.boot
+ spring-boot-test-autoconfigure
+ ${springBootVersion}
+ test
+
+
+ org.springframework
+ spring-test
+ 5.0.8.RELEASE
+ test
+
+
+
+ org.lognet
+ grpc-spring-boot-starter
+ 2.4.1
+
+
+
+
+ org.slf4j
+ slf4j-api
+ 1.7.25
+
+
+
+
+ commons-codec
+ commons-codec
+ 1.10
+
+
+ com.datadoghq
+ java-dogstatsd-client
+ 2.6.1
+
+
+ com.google.guava
+ guava
+ 26.0-jre
+
+
+ com.google.protobuf
+ protobuf-java
+ ${protobufVersion}
+
+
+ com.google.protobuf
+ protobuf-java-util
+ ${protobufVersion}
+
+
+ io.micrometer
+ micrometer-core
+ ${micrometer.version}
+
+
+ io.micrometer
+ micrometer-registry-statsd
+ ${micrometer.version}
+
+
+ joda-time
+ joda-time
+ 2.9.9
+
+
+ org.apache.kafka
+ kafka-clients
+ 2.3.0
+
+
+ org.projectlombok
+ lombok
+ 1.18.2
+ provided
+
+
+ redis.clients
+ jedis
+ 3.1.0
+
+
+
+
+ com.github.kstyrc
+ embedded-redis
+ 0.6
+ test
+
+
+ org.hamcrest
+ hamcrest-all
+ ${hamcrest.version}
+ test
+
+
+ org.hamcrest
+ hamcrest-core
+ ${hamcrest.version}
+ test
+
+
+ org.hamcrest
+ hamcrest-library
+ ${hamcrest.version}
+ test
+
+
+ org.mockito
+ mockito-core
+ 2.28.2
+ test
+
+
+
kr.motd.maven
os-maven-plugin
- 1.6.0
+ 1.6.2
+
org.apache.maven.plugins
maven-compiler-plugin
- 3.7.0
+ 3.8.1
1.8
+
+ -Xlint:all
+
+
+ -Xdoclint:-syntax
+
@@ -82,6 +363,16 @@
+
+ io.fabric8
+ docker-maven-plugin
+ 0.20.1
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.1.0
+
org.codehaus.mojo
exec-maven-plugin
@@ -105,8 +396,9 @@
org.xolstice.maven.plugins
protobuf-maven-plugin
- 0.5.1
+ 0.6.1
+ true
com.google.protobuf:protoc:${protocVersion}:exe:${os.detected.classifier}
diff --git a/protos/feast/types/Value.proto b/protos/feast/types/Value.proto
index 2cdb2c924e..065497f30a 100644
--- a/protos/feast/types/Value.proto
+++ b/protos/feast/types/Value.proto
@@ -16,8 +16,6 @@
syntax = "proto3";
-import "google/protobuf/timestamp.proto";
-
package feast.types;
option java_package = "feast.types";
diff --git a/sdk/java/pom.xml b/sdk/java/pom.xml
index e9690cff54..43465ad911 100644
--- a/sdk/java/pom.xml
+++ b/sdk/java/pom.xml
@@ -4,13 +4,18 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
- com.gojek.feast
+ Feast SDK for Java
feast-client
- 0.3-SNAPSHOT
+
+
+ feast
+ feast-parent
+ ${revision}
+ ../..
+
- 1.24.0
- 3.10.0
+
5.5.2
@@ -19,34 +24,28 @@
io.grpc
grpc-netty-shaded
- ${grpc.version}
io.grpc
grpc-protobuf
- ${grpc.version}
io.grpc
grpc-stub
- ${grpc.version}
com.google.protobuf
protobuf-java-util
- ${protobuf.version}
com.google.protobuf
protobuf-java
- ${protobuf.version}
org.slf4j
slf4j-api
- 1.8.0-beta4
@@ -66,54 +65,15 @@
-
-
- kr.motd.maven
- os-maven-plugin
- 1.6.2
-
-
org.xolstice.maven.plugins
protobuf-maven-plugin
- 0.6.1
-
- com.google.protobuf:protoc:3.10.0:exe:${os.detected.classifier}
-
- grpc-java
- io.grpc:protoc-gen-grpc-java:1.24.0:exe:${os.detected.classifier}
-
-
-
-
-
- compile
- compile-custom
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.8.1
-
-
- 8
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
- 2.22.0
org.apache.maven.plugins
maven-javadoc-plugin
- 3.1.0
true
@@ -121,4 +81,4 @@
-
\ No newline at end of file
+
diff --git a/serving/pom.xml b/serving/pom.xml
index 4ed3d91115..fd24bcafcf 100644
--- a/serving/pom.xml
+++ b/serving/pom.xml
@@ -20,15 +20,6 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
-
- 0.3.0
- UTF-8
- 3.6.1
- 1.21.0
- 3.6.1
- 2.0.9.RELEASE
-
-
feast
feast-parent
@@ -37,17 +28,8 @@
feast-serving
Feast Serving
- jar
-
-
- false
-
- central
- bintray
- https://jcenter.bintray.com
-
spring-plugins
Spring Plugins
@@ -88,10 +70,15 @@
+
+
+ org.slf4j
+ slf4j-api
+
+
org.springframework.boot
spring-boot-configuration-processor
- ${springBootVersion}
true
@@ -99,70 +86,44 @@
org.springframework.boot
spring-boot-starter-web
- ${springBootVersion}
-
-
- org.springframework.boot
- spring-boot-starter-logging
-
-
org.springframework.boot
spring-boot-starter-log4j2
- ${springBootVersion}
org.springframework.boot
spring-boot-devtools
- ${springBootVersion}
true
-
- org.apache.logging.log4j
- log4j-web
- 2.12.0
-
-
org.lognet
grpc-spring-boot-starter
- 2.4.1
org.springframework.boot
spring-boot-starter-actuator
- ${springBootVersion}
-
-
- io.grpc
- grpc-netty
- ${grpcVersion}
-
io.grpc
grpc-services
- ${grpcVersion}
io.grpc
grpc-stub
- ${grpcVersion}
com.google.protobuf
protobuf-java-util
- ${protobufVersion}
@@ -175,25 +136,16 @@
redis.clients
jedis
- 2.9.0
com.google.guava
guava
- 26.0-jre
-
-
-
- commons-codec
- commons-codec
- 1.10
joda-time
joda-time
- 2.9.9
@@ -207,80 +159,37 @@
0.31.0
- io.opentracing.contrib
- opentracing-concurrent
- 0.2.0
-
-
-
-
-
- io.micrometer
- micrometer-core
- 1.0.7
-
-
-
- io.micrometer
- micrometer-registry-statsd
- 1.0.7
-
-
- com.datadoghq
- java-dogstatsd-client
- 2.6.1
+ io.opentracing
+ opentracing-noop
+ 0.31.0
com.google.cloud
google-cloud-bigquery
- 1.91.0
com.google.cloud
google-cloud-storage
- 1.91.0
-
-
- io.opencensus
- opencensus-impl
- 0.24.0
- runtime
-
-
-
org.projectlombok
lombok
- 1.18.2
- provided
io.grpc
grpc-testing
- ${grpcVersion}
- test
org.springframework.boot
spring-boot-starter-test
- ${springBootVersion}
- test
-
-
-
- com.github.kstyrc
- embedded-redis
- 0.6
- test
org.mockito
@@ -289,20 +198,6 @@
test
-
- org.junit.jupiter
- junit-jupiter
- RELEASE
- test
-
-
-
- com.google.guava
- guava-testlib
- 26.0-jre
- test
-
-
org.hibernate
@@ -311,22 +206,12 @@
-
- org.apache.commons
- commons-collections4
- 4.4
-
com.fasterxml.jackson.dataformat
jackson-dataformat-yaml
- 2.9.9
- compile
-
-
-
profile-local
@@ -352,7 +237,6 @@
io.fabric8
docker-maven-plugin
- 0.20.1
prepare-bigtable-emulator
@@ -393,9 +277,9 @@
-
+
profile-ci
@@ -408,7 +292,6 @@
io.fabric8
docker-maven-plugin
- 0.20.1
prepare-bigtable-emulator
diff --git a/serving/src/main/java/feast/serving/service/CachedSpecService.java b/serving/src/main/java/feast/serving/service/CachedSpecService.java
index dfb62eca57..4fdf3e147a 100644
--- a/serving/src/main/java/feast/serving/service/CachedSpecService.java
+++ b/serving/src/main/java/feast/serving/service/CachedSpecService.java
@@ -9,8 +9,6 @@
import feast.core.CoreServiceProto.GetFeatureSetsRequest;
import feast.core.CoreServiceProto.GetFeatureSetsRequest.Filter;
import feast.core.CoreServiceProto.GetFeatureSetsResponse;
-import feast.core.CoreServiceProto.GetStoresRequest;
-import feast.core.CoreServiceProto.GetStoresResponse;
import feast.core.CoreServiceProto.UpdateStoreRequest;
import feast.core.CoreServiceProto.UpdateStoreResponse;
import feast.core.FeatureSetProto.FeatureSetSpec;
diff --git a/serving/src/test/java/feast/serving/service/CachedSpecServiceTest.java b/serving/src/test/java/feast/serving/service/CachedSpecServiceTest.java
index 509e24689d..6b27f1a50e 100644
--- a/serving/src/test/java/feast/serving/service/CachedSpecServiceTest.java
+++ b/serving/src/test/java/feast/serving/service/CachedSpecServiceTest.java
@@ -1,8 +1,6 @@
package feast.serving.service;
import static org.hamcrest.CoreMatchers.equalTo;
-import static org.hamcrest.CoreMatchers.hasItems;
-import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.junit.Assert.*;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
@@ -10,9 +8,6 @@
import com.google.common.collect.Lists;
import feast.core.CoreServiceProto.GetFeatureSetsRequest;
import feast.core.CoreServiceProto.GetFeatureSetsResponse;
-import feast.core.CoreServiceProto.GetStoresRequest;
-import feast.core.CoreServiceProto.GetStoresRequest.Filter;
-import feast.core.CoreServiceProto.GetStoresResponse;
import feast.core.CoreServiceProto.UpdateStoreRequest;
import feast.core.CoreServiceProto.UpdateStoreResponse;
import feast.core.FeatureSetProto.FeatureSetSpec;
@@ -24,7 +19,6 @@
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
-import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@@ -34,7 +28,6 @@
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.mockito.Mock;
-import redis.embedded.Redis;
public class CachedSpecServiceTest {