Create GCP project, service account, bucket.
$ docker logs feast_core_1
WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
███████╗███████╗ █████╗ ███████╗████████╗
██╔════╝██╔════╝██╔══██╗██╔════╝╚══██╔══╝
█████╗ █████╗ ███████║███████╗ ██║
██╔══╝ ██╔══╝ ██╔══██║╚════██║ ██║
██║ ███████╗██║ ██║███████║ ██║
╚═╝ ╚══════╝╚═╝ ╚═╝╚══════╝ ╚═╝
██████╗ ██████╗ ██████╗ ███████╗
██╔════╝██╔═══██╗██╔══██╗██╔════╝
██║ ██║ ██║██████╔╝█████╗
██║ ██║ ██║██╔══██╗██╔══╝
╚██████╗╚██████╔╝██║ ██║███████╗
╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝
2020-07-31 14:06:35.558 INFO 12f08993e2f0 --- [ main] f.c.CoreApplication : Starting CoreApplication on 12f08993e2f0 with PID 1 (/opt/feast/feast-core.jar started by root in /)
2020-07-31 14:06:35.579 DEBUG 12f08993e2f0 --- [ main] f.c.CoreApplication : Running with Spring Boot v2.0.9.RELEASE, Spring v5.0.13.RELEASE
2020-07-31 14:06:35.583 INFO 12f08993e2f0 --- [ main] f.c.CoreApplication : No active profile set, falling back to default profiles: default
2020-07-31 14:06:35.926 INFO 12f08993e2f0 --- [ main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@7354b8c5: startup date [Fri Jul 31 14:06:35 UTC 2020]; root of context hierarchy
2020-07-31 14:06:40.170 INFO 12f08993e2f0 --- [ main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2020-07-31 14:06:40.657 INFO 12f08993e2f0 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.kafka.annotation.KafkaBootstrapConfiguration' of type [org.springframework.kafka.annotation.KafkaBootstrapConfiguration$$EnhancerBySpringCGLIB$$a4fe9a98] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2020-07-31 14:06:40.764 INFO 12f08993e2f0 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$d14c8915] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2020-07-31 14:06:41.667 INFO 12f08993e2f0 --- [ main] o.s.b.w.e.t.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2020-07-31 14:06:41.708 INFO 12f08993e2f0 --- [ main] o.a.c.h.Http11NioProtocol : Initializing ProtocolHandler ["http-nio-8080"]
2020-07-31 14:06:41.749 INFO 12f08993e2f0 --- [ main] o.a.c.c.StandardService : Starting service [Tomcat]
2020-07-31 14:06:41.756 INFO 12f08993e2f0 --- [ main] o.a.c.c.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.39
2020-07-31 14:06:41.778 INFO 12f08993e2f0 --- [ost-startStop-1] o.a.c.c.AprLifecycleListener : The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib]
2020-07-31 14:06:41.928 INFO 12f08993e2f0 --- [ost-startStop-1] o.a.c.c.C.[.[.[/] : Initializing Spring embedded WebApplicationContext
2020-07-31 14:06:41.928 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.w.c.ContextLoader : Root WebApplicationContext: initialization completed in 6015 ms
2020-07-31 14:06:43.014 WARN 12f08993e2f0 --- [ost-startStop-1] o.f.c.Flyway : Direct configuration of the Flyway object has been deprecated and will be removed in Flyway 6.0. Use Flyway.configure() instead.
2020-07-31 14:06:43.015 WARN 12f08993e2f0 --- [ost-startStop-1] o.f.c.Flyway : Direct configuration retrieval from the Flyway object has been deprecated and will be removed in Flyway 6.0. Use Flyway.getConfiguration() instead.
2020-07-31 14:06:43.016 WARN 12f08993e2f0 --- [ost-startStop-1] o.f.c.Flyway : Direct configuration retrieval from the Flyway object has been deprecated and will be removed in Flyway 6.0. Use Flyway.getConfiguration() instead.
2020-07-31 14:06:43.016 WARN 12f08993e2f0 --- [ost-startStop-1] o.f.c.Flyway : Direct configuration of the Flyway object has been deprecated and will be removed in Flyway 6.0. Use Flyway.configure() instead.
2020-07-31 14:06:43.045 WARN 12f08993e2f0 --- [ost-startStop-1] o.f.c.Flyway : Direct configuration of the Flyway object has been deprecated and will be removed in Flyway 6.0. Use Flyway.configure() instead.
2020-07-31 14:06:43.076 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.l.VersionPrinter : Flyway Community Edition 5.2.4 by Boxfuse
2020-07-31 14:06:43.107 INFO 12f08993e2f0 --- [ost-startStop-1] c.z.h.HikariDataSource : HikariPool-1 - Starting...
2020-07-31 14:06:43.311 INFO 12f08993e2f0 --- [ost-startStop-1] c.z.h.HikariDataSource : HikariPool-1 - Start completed.
2020-07-31 14:06:43.327 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.d.DatabaseFactory : Database: jdbc:postgresql://db:5432/postgres (PostgreSQL 12.3)
2020-07-31 14:06:43.341 WARN 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.d.b.Database : Flyway upgrade recommended: PostgreSQL 12.3 is newer than this version of Flyway and support has not been tested.
2020-07-31 14:06:43.513 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbValidate : Successfully validated 7 migrations (execution time 00:00.080s)
2020-07-31 14:06:43.529 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.s.JdbcTableSchemaHistory : Creating Schema History table: "public"."flyway_schema_history"
2020-07-31 14:06:43.563 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Current version of schema "public": << Empty Schema >>
2020-07-31 14:06:43.566 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 1 - Baseline
2020-07-31 14:06:43.643 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 2 - RELEASE 0.6 Generalizing Source AND Extending FeatureSetJobStatus AND Feature Statistics
2020-07-31 14:06:43.690 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 2.1 - Many Stores Per Job
2020-07-31 14:06:43.713 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 2.2 - Subscription Migration
2020-07-31 14:06:43.724 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 2.3 - Fix Primary Keys
2020-07-31 14:06:43.740 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 2.4 - Store proto
2020-07-31 14:06:43.751 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Migrating schema "public" to version 2.5 - Fix Subscription MIgration
2020-07-31 14:06:43.764 INFO 12f08993e2f0 --- [ost-startStop-1] o.f.c.i.c.DbMigrate : Successfully applied 7 migrations to schema "public" (execution time 00:00.235s)
2020-07-31 14:06:44.314 INFO 12f08993e2f0 --- [ost-startStop-1] j.LocalContainerEntityManagerFactoryBean : Building JPA container EntityManagerFactory for persistence unit 'default'
2020-07-31 14:06:44.349 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.j.i.u.LogHelper : HHH000204: Processing PersistenceUnitInfo [
name: default
...]
2020-07-31 14:06:44.508 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.Version : HHH000412: Hibernate Core {5.3.6.Final}
2020-07-31 14:06:44.512 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.c.Environment : HHH000206: hibernate.properties not found
2020-07-31 14:06:44.890 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.a.c.Version : HCANN000001: Hibernate Commons Annotations {5.0.4.Final}
2020-07-31 14:06:45.711 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.d.Dialect : HHH000400: Using dialect: org.hibernate.dialect.PostgreSQL95Dialect
2020-07-31 14:06:45.951 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.e.j.e.i.LobCreatorBuilderImpl : HHH000424: Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException
2020-07-31 14:06:45.967 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.t.BasicTypeRegistry : HHH000270: Type registration [java.util.UUID] overrides previous : org.hibernate.type.UUIDBinaryType@573f34e5
2020-07-31 14:06:48.313 INFO 12f08993e2f0 --- [ost-startStop-1] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2020-07-31 14:06:49.694 INFO 12f08993e2f0 --- [ost-startStop-1] o.h.h.i.QueryTranslatorFactoryInitiator : HHH000397: Using ASTQueryTranslatorFactory
2020-07-31 14:06:51.060 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2020-07-31 14:06:51.060 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.FilterRegistrationBean : Mapping filter: 'webMvcMetricsFilter' to: [/*]
2020-07-31 14:06:51.061 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2020-07-31 14:06:51.061 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2020-07-31 14:06:51.061 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2020-07-31 14:06:51.062 INFO 12f08993e2f0 --- [ost-startStop-1] .s.DelegatingFilterProxyRegistrationBean : Mapping filter: 'springSecurityFilterChain' to: [/*]
2020-07-31 14:06:51.062 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.FilterRegistrationBean : Mapping filter: 'httpTraceFilter' to: [/*]
2020-07-31 14:06:51.063 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.ServletRegistrationBean : Servlet metricsServlet mapped to [/metrics]
2020-07-31 14:06:51.068 INFO 12f08993e2f0 --- [ost-startStop-1] o.s.b.w.s.ServletRegistrationBean : Servlet dispatcherServlet mapped to [/]
2020-07-31 14:06:51.712 INFO 12f08993e2f0 --- [ main] .s.s.UserDetailsServiceAutoConfiguration :
Using generated security password: e2917407-3725-45d4-9e7a-e1772dcc4092
2020-07-31 14:06:51.993 INFO 12f08993e2f0 --- [ main] o.s.s.w.DefaultSecurityFilterChain : Creating filter chain: any request, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@a565cbd, org.springframework.security.web.context.SecurityContextPersistenceFilter@481e91b6, org.springframework.security.web.header.HeaderWriterFilter@1daf3b44, org.springframework.security.web.authentication.logout.LogoutFilter@6f139fc9, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@3cbf1ba4, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@383864d5, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6fc29daa, org.springframework.security.web.session.SessionManagementFilter@8a2a6a, org.springframework.security.web.access.ExceptionTranslationFilter@3ee69ad8, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3cb8c8ce]
2020-07-31 14:06:52.253 INFO 12f08993e2f0 --- [ main] o.s.w.s.h.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2020-07-31 14:06:52.531 INFO 12f08993e2f0 --- [ main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@7354b8c5: startup date [Fri Jul 31 14:06:35 UTC 2020]; root of context hierarchy
2020-07-31 14:06:52.616 WARN 12f08993e2f0 --- [ main] aWebConfiguration$JpaWebMvcConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2020-07-31 14:06:52.680 INFO 12f08993e2f0 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2020-07-31 14:06:52.681 INFO 12f08993e2f0 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2020-07-31 14:06:52.737 INFO 12f08993e2f0 --- [ main] o.s.w.s.h.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2020-07-31 14:06:52.737 INFO 12f08993e2f0 --- [ main] o.s.w.s.h.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2020-07-31 14:06:54.006 INFO 12f08993e2f0 --- [ main] o.s.b.a.e.w.EndpointLinksResolver : Exposing 2 endpoint(s) beneath base path '/actuator'
2020-07-31 14:06:54.039 INFO 12f08993e2f0 --- [ main] s.b.a.e.w.s.WebMvcEndpointHandlerMapping : Mapped "{[/actuator/health],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map<java.lang.String, java.lang.String>)
2020-07-31 14:06:54.040 INFO 12f08993e2f0 --- [ main] s.b.a.e.w.s.WebMvcEndpointHandlerMapping : Mapped "{[/actuator/info],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map<java.lang.String, java.lang.String>)
2020-07-31 14:06:54.042 INFO 12f08993e2f0 --- [ main] s.b.a.e.w.s.WebMvcEndpointHandlerMapping : Mapped "{[/actuator],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto protected java.util.Map<java.lang.String, java.util.Map<java.lang.String, org.springframework.boot.actuate.endpoint.web.Link>> org.springframework.boot.actuate.endpoint.web.servlet.WebMvcEndpointHandlerMapping.links(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2020-07-31 14:06:54.239 INFO 12f08993e2f0 --- [ main] o.a.k.c.a.AdminClientConfig : AdminClientConfig values:
bootstrap.servers = [kafka:9092, localhost:9094]
client.dns.lookup = default
client.id =
connections.max.idle.ms = 300000
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 15000
retries = 5
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
2020-07-31 14:06:54.344 INFO 12f08993e2f0 --- [ main] o.a.k.c.u.AppInfoParser : Kafka version: 2.3.0
2020-07-31 14:06:54.344 INFO 12f08993e2f0 --- [ main] o.a.k.c.u.AppInfoParser : Kafka commitId: fc1aaa116b661c8a
2020-07-31 14:06:54.344 INFO 12f08993e2f0 --- [ main] o.a.k.c.u.AppInfoParser : Kafka startTimeMs: 1596204414340
2020-07-31 14:06:54.892 ERROR 12f08993e2f0 --- [ main] o.s.k.c.KafkaAdmin : Failed to create topics
org.apache.kafka.common.errors.InvalidReplicationFactorException: Replication factor: 3 larger than available brokers: 1.
2020-07-31 14:06:54.903 INFO 12f08993e2f0 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2020-07-31 14:06:54.908 INFO 12f08993e2f0 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'dataSource' has been autodetected for JMX exposure
2020-07-31 14:06:54.932 INFO 12f08993e2f0 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located MBean 'dataSource': registering with JMX server as MBean [com.zaxxer.hikari:name=dataSource,type=HikariDataSource]
2020-07-31 14:06:55.019 INFO 12f08993e2f0 --- [ main] o.s.c.s.DefaultLifecycleProcessor : Starting beans in phase 2147483547
2020-07-31 14:06:55.049 INFO 12f08993e2f0 --- [ main] o.a.k.c.c.ConsumerConfig : ConsumerConfig values:
allow.auto.create.topics = true
auto.commit.interval.ms = 5000
auto.offset.reset = latest
bootstrap.servers = [kafka:9092, localhost:9094]
check.crcs = true
client.dns.lookup = default
client.id =
client.rack =
connections.max.idle.ms = 540000
default.api.timeout.ms = 60000
enable.auto.commit = true
exclude.internal.topics = true
fetch.max.bytes = 52428800
fetch.max.wait.ms = 500
fetch.min.bytes = 1
group.id = core-service-null
group.instance.id = null
heartbeat.interval.ms = 3000
interceptor.classes = []
internal.leave.group.on.close = true
isolation.level = read_uncommitted
key.deserializer = class org.apache.kafka.common.serialization.StringDeserializer
max.partition.fetch.bytes = 1048576
max.poll.interval.ms = 300000
max.poll.records = 500
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partition.assignment.strategy = [class org.apache.kafka.clients.consumer.RangeAssignor]
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
session.timeout.ms = 10000
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
value.deserializer = class feast.core.util.KafkaSerialization$ProtoDeserializer
2020-07-31 14:06:55.119 INFO 12f08993e2f0 --- [ main] o.a.k.c.u.AppInfoParser : Kafka version: 2.3.0
2020-07-31 14:06:55.119 INFO 12f08993e2f0 --- [ main] o.a.k.c.u.AppInfoParser : Kafka commitId: fc1aaa116b661c8a
2020-07-31 14:06:55.119 INFO 12f08993e2f0 --- [ main] o.a.k.c.u.AppInfoParser : Kafka startTimeMs: 1596204415119
2020-07-31 14:06:55.124 INFO 12f08993e2f0 --- [ main] o.a.k.c.c.KafkaConsumer : [Consumer clientId=consumer-1, groupId=core-service-null] Subscribed to topic(s): feast-specs-ack
2020-07-31 14:06:55.130 INFO 12f08993e2f0 --- [ main] o.s.s.c.ThreadPoolTaskScheduler : Initializing ExecutorService
2020-07-31 14:06:55.139 INFO 12f08993e2f0 --- [ main] o.s.c.s.DefaultLifecycleProcessor : Starting beans in phase 2147483647
2020-07-31 14:06:55.151 WARN 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.NetworkClient : [Consumer clientId=consumer-1, groupId=core-service-null] Connection to node -2 (localhost/127.0.0.1:9094) could not be established. Broker may not be available.
2020-07-31 14:06:55.175 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.Metadata : [Consumer clientId=consumer-1, groupId=core-service-null] Cluster ID: Rlqi6O23SFai-FI3_al8Sg
2020-07-31 14:06:55.195 INFO 12f08993e2f0 --- [ main] n.d.b.g.s.s.AbstractGrpcServerFactory : Registered gRPC service: feast.core.CoreService, bean: coreServiceImpl, class: feast.core.grpc.CoreServiceImpl
2020-07-31 14:06:55.202 INFO 12f08993e2f0 --- [ main] n.d.b.g.s.s.AbstractGrpcServerFactory : Registered gRPC service: grpc.health.v1.Health, bean: healthServiceImpl, class: feast.core.grpc.HealthServiceImpl
2020-07-31 14:06:55.673 INFO 12f08993e2f0 --- [ main] n.d.b.g.s.s.GrpcServerLifecycle : gRPC Server started, listening on address: *, port: 6565
2020-07-31 14:06:55.713 INFO 12f08993e2f0 --- [ main] s.a.ScheduledAnnotationBeanPostProcessor : No TaskScheduler/ScheduledExecutorService bean found for scheduled processing
2020-07-31 14:06:55.749 INFO 12f08993e2f0 --- [ main] o.a.c.h.Http11NioProtocol : Starting ProtocolHandler ["http-nio-8080"]
2020-07-31 14:06:55.751 INFO 12f08993e2f0 --- [pool-3-thread-1] f.c.s.JobCoordinatorService : Polling for new jobs...
2020-07-31 14:06:55.762 INFO 12f08993e2f0 --- [ main] o.a.t.u.n.NioSelectorPool : Using a shared selector for servlet write/read
2020-07-31 14:06:55.925 INFO 12f08993e2f0 --- [pool-3-thread-1] f.c.s.JobCoordinatorService : No jobs found.
2020-07-31 14:06:55.964 INFO 12f08993e2f0 --- [ main] o.s.b.w.e.t.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2020-07-31 14:06:55.969 INFO 12f08993e2f0 --- [ main] f.c.CoreApplication : Started CoreApplication in 21.761 seconds (JVM running for 24.3)
2020-07-31 14:06:56.246 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.AbstractCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] Discovered group coordinator kafka:9092 (id: 2147482646 rack: null)
2020-07-31 14:06:56.222 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.ConsumerCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] Revoking previously assigned partitions []
2020-07-31 14:06:56.222 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.s.k.l.KafkaMessageListenerContainer : partitions revoked: []
2020-07-31 14:06:56.223 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.AbstractCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] (Re-)joining group
2020-07-31 14:06:56.263 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.AbstractCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] (Re-)joining group
2020-07-31 14:06:59.390 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.AbstractCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] Successfully joined group with generation 1
2020-07-31 14:06:59.399 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.ConsumerCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] Setting newly assigned partitions: feast-specs-ack-0
2020-07-31 14:06:59.424 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.ConsumerCoordinator : [Consumer clientId=consumer-1, groupId=core-service-null] Found no committed offset for partition feast-specs-ack-0
2020-07-31 14:06:59.456 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.a.k.c.c.i.SubscriptionState : [Consumer clientId=consumer-1, groupId=core-service-null] Resetting offset for partition feast-specs-ack-0 to offset 0.
2020-07-31 14:06:59.461 INFO 12f08993e2f0 --- [ntainer#0-0-C-1] o.s.k.l.KafkaMessageListenerContainer : partitions assigned: [feast-specs-ack-0]
2020-07-31 14:07:25.894 INFO 12f08993e2f0 --- [pool-3-thread-1] f.c.s.JobCoordinatorService : Polling for new jobs...
2020-07-31 14:07:25.922 INFO 12f08993e2f0 --- [pool-3-thread-1] f.c.s.JobCoordinatorService : Creating/Updating 2 jobs...
2020-07-31 14:07:25.926 AUDIT 12f08993e2f0 --- [pool-4-thread-1] f.c.l.AuditLogger : {action=SUBMIT, detail=Building graph and submitting to DirectRunner, id=kafka-2111741832-to-historical-1596204445910, resource=JOB, timestamp=Fri Jul 31 14:07:25 UTC 2020}
2020-07-31 14:07:25.926 AUDIT 12f08993e2f0 --- [pool-4-thread-2] f.c.l.AuditLogger : {action=SUBMIT, detail=Building graph and submitting to DirectRunner, id=kafka-2111741832-to-online-1596204445919, resource=JOB, timestamp=Fri Jul 31 14:07:25 UTC 2020}
2020-07-31 14:07:26.866 INFO 12f08993e2f0 --- [pool-4-thread-2] f.i.ImportJob : Starting import job with settings:
Current Settings:
appName: DirectRunnerJobManager
blockOnRun: false
defaultFeastProject: default
enforceEncodability: true
enforceImmutability: true
gcsPerformanceMetrics: false
jobName: kafka-2111741832-to-online-1596204445919
optionsId: 1
project:
runner: class org.apache.beam.runners.direct.DirectRunner
sourceJson: {
"type": "KAFKA",
"kafkaSourceConfig": {
"bootstrapServers": "kafka:9092,localhost:9094",
"topic": "feast-features"
}
}
specsStreamingUpdateConfigJson: {
"source": {
"bootstrapServers": "kafka:9092,localhost:9094",
"topic": "feast-specs"
},
"ack": {
"bootstrapServers": "kafka:9092,localhost:9094",
"topic": "feast-specs-ack"
}
}
stableUniqueNames: WARNING
storesJson: [{
"name": "online",
"type": "REDIS",
"subscriptions": [{
"name": "*",
"project": "*"
}],
"redisConfig": {
"host": "redis",
"port": 6379
}
}]
2020-07-31 14:07:26.866 INFO 12f08993e2f0 --- [pool-4-thread-1] f.i.ImportJob : Starting import job with settings:
Current Settings:
appName: DirectRunnerJobManager
blockOnRun: false
defaultFeastProject: default
enforceEncodability: true
enforceImmutability: true
gcsPerformanceMetrics: false
jobName: kafka-2111741832-to-historical-1596204445910
optionsId: 0
project:
runner: class org.apache.beam.runners.direct.DirectRunner
sourceJson: {
"type": "KAFKA",
"kafkaSourceConfig": {
"bootstrapServers": "kafka:9092,localhost:9094",
"topic": "feast-features"
}
}
specsStreamingUpdateConfigJson: {
"source": {
"bootstrapServers": "kafka:9092,localhost:9094",
"topic": "feast-specs"
},
"ack": {
"bootstrapServers": "kafka:9092,localhost:9094",
"topic": "feast-specs-ack"
}
}
stableUniqueNames: WARNING
storesJson: [{
"name": "historical",
"type": "BIGQUERY",
"subscriptions": [{
"name": "*",
"project": "*"
}],
"bigqueryConfig": {
"projectId": "feast-example-project",
"datasetId": "dataset",
"stagingLocation": "gs://feast-bucket-31072020/test",
"initialRetryDelaySeconds": 1,
"totalTimeoutSeconds": 21600
}
}]
2020-07-31 14:07:27.685 ERROR 12f08993e2f0 --- [pool-4-thread-1] f.c.j.d.DirectRunnerJobManager : Error submitting job
java.lang.IllegalArgumentException: FixedWindows WindowingStrategies must have 0 <= offset < size
at org.apache.beam.sdk.transforms.windowing.FixedWindows.<init>(FixedWindows.java:65)
at org.apache.beam.sdk.transforms.windowing.FixedWindows.of(FixedWindows.java:50)
at feast.storage.connectors.bigquery.writer.BigQueryWrite.expand(BigQueryWrite.java:135)
at feast.storage.connectors.bigquery.writer.BigQueryWrite.expand(BigQueryWrite.java:49)
at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:539)
at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:490)
at org.apache.beam.sdk.values.PCollection.apply(PCollection.java:368)
at feast.ingestion.ImportJob.runPipeline(ImportJob.java:167)
at feast.core.job.direct.DirectRunnerJobManager.runPipeline(DirectRunnerJobManager.java:164)
at feast.core.job.direct.DirectRunnerJobManager.startJob(DirectRunnerJobManager.java:83)
at feast.core.job.CreateJobTask.call(CreateJobTask.java:48)
at feast.core.job.CreateJobTask.call(CreateJobTask.java:29)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
2020-07-31 14:07:27.686 ERROR 12f08993e2f0 --- [pool-4-thread-1] f.c.j.CreateJobTask : Error running ingestion job: java.lang.IllegalArgumentException: FixedWindows WindowingStrategies must have 0 <= offset < size
2020-07-31 14:07:27.686 AUDIT 12f08993e2f0 --- [pool-4-thread-1] f.c.l.AuditLogger : {action=STATUS_CHANGE, detail=Job failed to be submitted to runner DirectRunner. Job status changed to ERROR., id=kafka-2111741832-to-historical-1596204445910, resource=JOB, timestamp=Fri Jul 31 14:07:27 UTC 2020}
2020-07-31 14:07:27.939 INFO 12f08993e2f0 --- [pool-4-thread-2] i.l.c.EpollProvider : Starting without optional epoll library
2020-07-31 14:07:27.943 INFO 12f08993e2f0 --- [pool-4-thread-2] i.l.c.KqueueProvider : Starting without optional kqueue library
2020-07-31 14:07:28.971 INFO 12f08993e2f0 --- [pool-4-thread-2] o.a.k.c.c.ConsumerConfig : ConsumerConfig values:
$ docker logs feast_core_1
...
2020-07-31 14:15:13.157 ERROR d70f6bada002 --- [pool-4-thread-2] f.c.j.d.DirectRunnerJobManager : Error submitting job
java.util.ConcurrentModificationException
at java.base/java.util.HashMap.computeIfAbsent(Unknown Source)
at org.apache.beam.sdk.schemas.utils.ReflectUtils.getMethods(ReflectUtils.java:77)
at org.apache.beam.sdk.schemas.AutoValueSchema$AbstractGetterTypeSupplier.get(AutoValueSchema.java:46)
at org.apache.beam.sdk.schemas.utils.StaticSchemaInference.schemaFromClass(StaticSchemaInference.java:83)
at org.apache.beam.sdk.schemas.utils.JavaBeanUtils.schemaFromJavaBeanClass(JavaBeanUtils.java:63)
at org.apache.beam.sdk.schemas.AutoValueSchema.schemaFor(AutoValueSchema.java:114)
at org.apache.beam.sdk.schemas.annotations.DefaultSchema$DefaultSchemaProvider.schemaFor(DefaultSchema.java:131)
at org.apache.beam.sdk.schemas.SchemaRegistry.lambda$getSchema$0(SchemaRegistry.java:256)
at org.apache.beam.sdk.schemas.SchemaRegistry.getProviderResult(SchemaRegistry.java:239)
at org.apache.beam.sdk.schemas.SchemaRegistry.getSchema(SchemaRegistry.java:256)
at org.apache.beam.sdk.values.PCollection.inferCoderOrFail(PCollection.java:159)
at org.apache.beam.sdk.values.PCollection.finishSpecifyingOutput(PCollection.java:94)
at org.apache.beam.sdk.runners.TransformHierarchy.setOutput(TransformHierarchy.java:210)
at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:540)
at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:490)
at org.apache.beam.sdk.values.PCollection.apply(PCollection.java:368)
at feast.ingestion.transform.ReadFromSource.expand(ReadFromSource.java:91)
at feast.ingestion.transform.ReadFromSource.expand(ReadFromSource.java:37)
at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:539)
at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:490)
at org.apache.beam.sdk.values.PBegin.apply(PBegin.java:56)
at org.apache.beam.sdk.Pipeline.apply(Pipeline.java:184)
at feast.ingestion.ImportJob.runPipeline(ImportJob.java:117)
at feast.core.job.direct.DirectRunnerJobManager.runPipeline(DirectRunnerJobManager.java:164)
at feast.core.job.direct.DirectRunnerJobManager.startJob(DirectRunnerJobManager.java:83)
at feast.core.job.CreateJobTask.call(CreateJobTask.java:48)
at feast.core.job.CreateJobTask.call(CreateJobTask.java:29)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
2020-07-31 14:15:13.157 ERROR d70f6bada002 --- [pool-4-thread-2] f.c.j.CreateJobTask : Error running ingestion job: java.util.ConcurrentModificationException
Expected Behavior
Deploy feast v0.6-branch using docker-compose without errors (following https://docs.feast.dev/v/v0.6-branch/getting-started/deploying-feast/docker-compose).
Current Behavior
Errors occur when running the cells of
feast/examples/basic/basic.ipynbSteps to reproduce
Create GCP project, service account, bucket.
Create
.envfile with:Update
batch-serving.yamlto:Bring containers up using:
A
java.lang.IllegalArgumentExceptionerror is shown in the core logs upon runningclient.apply(customer_fs)in the notebook:Specifications
docker desktop v2.2.0.4 on macOS 10.15.5
Possible Solution
Include
write_triggering_frequency_secondsinbatch-serving.yaml:Adding the trigger frequency setting changes the error to: