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 - 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 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 - 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 {