apache / apache/pulsar-helm-chart

Pulsar Manager: ERROR: relation "environments" does not exist

Open
#519 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
240
Forks
260
Avg merge
4h 12m
Merged PRs (30d)
1

Description

**Describe the bug**
I am trying to setup a development pulsar environment in Kubernetes and pulsar-manager does not seem to work out of the box.
I see the following log in the postgresql db log:

```
2024-08-17 12:36:46.349 GMT [7231] STATEMENT: SELECT count(0) FROM environments
2024-08-17 12:36:46.358 GMT [7231] ERROR: relation "environments" does not exist at character 22
```
and in the pulsar-manager.log
```
2024-08-17 12:38:15.909 INFO 15019 --- [main] o.a.p.manager.EmbeddedTomcatCustomizer : Starting servletContainer
2024-08-17 12:38:16.015 INFO 15019 --- [main] o.a.p.manager.EmbeddedTomcatCustomizer : Starting Tomcat Customizer
2024-08-17 12:38:16.135 INFO 15019 --- [main] o.a.p.manager.EmbeddedTomcatCustomizer : Catalina base is /tmp/tomcat.9079225201476633646.7750
2024-08-17 12:38:16.136 INFO 15019 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 7750 (http)
2024-08-17 12:38:16.159 INFO 15019 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2024-08-17 12:38:16.160 INFO 15019 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.31
2024-08-17 12:38:16.170 INFO 15019 --- [localhost-startStop-1] o.a.catalina.core.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/amd64:/usr/lib64:/lib64:/lib:/usr/lib]
2024-08-17 12:38:16.416 INFO 15019 --- [localhost-startStop-1] org.apache.jasper.servlet.TldScanner : At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
2024-08-17 12:38:16.419 INFO 15019 --- [localhost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2024-08-17 12:38:16.420 INFO 15019 --- [localhost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 2304 ms
2024-08-17 12:38:16.700 WARN 15019 --- [localhost-startStop-1] c.n.c.sources.URLConfigurationSource : No URLs will be polled as dynamic configuration sources.
2024-08-17 12:38:16.700 INFO 15019 --- [localhost-startStop-1] c.n.c.sources.URLConfigurationSource : To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
2024-08-17 12:38:16.713 INFO 15019 --- [localhost-startStop-1] c.netflix.config.DynamicPropertyFactory : DynamicPropertyFactory is initialized with configuration sources: com.netflix.config.ConcurrentCompositeConfiguration@2ddf98fc
2024-08-17 12:38:17.760 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2024-08-17 12:38:17.761 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2024-08-17 12:38:17.761 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2024-08-17 12:38:17.761 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2024-08-17 12:38:17.761 INFO 15019 --- [localhost-startStop-1] .s.DelegatingFilterProxyRegistrationBean : Mapping filter: 'springSecurityFilterChain' to: [/*]
2024-08-17 12:38:17.762 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpTraceFilter' to: [/*]
2024-08-17 12:38:17.762 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'webMvcMetricsFilter' to: [/*]
2024-08-17 12:38:17.762 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Servlet dispatcherServlet mapped to [/]
2024-08-17 12:38:17.763 INFO 15019 --- [localhost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Servlet zuulServlet mapped to [/zuul/*]
2024-08-17 12:38:18.433 WARN 15019 --- [main] f.a.AutowiredAnnotationBeanPostProcessor : Autowired annotation is not supported on static fields: private static java.lang.String org.apache.pulsar.manager.service.impl.BookiesServiceImpl.pulsarJwtToken
2024-08-17 12:38:18.819 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/clusters],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.ClustersController.getClusters(java.lang.Integer,java.lang.Integer)
2024-08-17 12:38:18.820 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/dashboard],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.DashboardController.getDashboardStats(java.util.List)
2024-08-17 12:38:18.822 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/users/user],methods=[PUT]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.UsersController.addUser(org.apache.pulsar.manager.entity.UserInfoEntity)
2024-08-17 12:38:18.823 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/users],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.UsersController.getUsers(java.lang.Integer,java.lang.Integer)
2024-08-17 12:38:18.823 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/users/user],methods=[POST]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.UsersController.updateUser(org.apache.pulsar.manager.entity.UserInfoEntity)
2024-08-17 12:38:18.823 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/users/user],methods=[DELETE]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.UsersController.deleteUser(org.apache.pulsar.manager.entity.UserInfoEntity)
2024-08-17 12:38:18.824 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/users/superuser],methods=[PUT]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.UsersController.createSuperUser(org.apache.pulsar.manager.entity.UserInfoEntity)
2024-08-17 12:38:18.824 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/users/userInfo],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.UsersController.getUserInfo()
2024-08-17 12:38:18.825 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/casdoor],methods=[POST]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.LoginController.callback(java.util.Map)
2024-08-17 12:38:18.825 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/logout],methods=[POST]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.LoginController.logout()
2024-08-17 12:38:18.826 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/login],methods=[POST]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.LoginController.login(java.util.Map)
2024-08-17 12:38:18.826 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/namespaces/{tenant}/{namespace}/stats],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.NamespacesController.getNamespacesStats(java.lang.String,java.lang.String)
2024-08-17 12:38:18.826 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/namespaces/{tenantOrNamespace}],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.NamespacesController.getNamespacesByTenant(java.lang.String,java.lang.Integer,java.lang.Integer)
2024-08-17 12:38:18.829 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/environments],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.EnvironmentsController.getEnvironmentsList(java.lang.Integer,java.lang.Integer)
2024-08-17 12:38:18.829 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/environments/environment],methods=[POST]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.EnvironmentsController.updateEnvironment(org.apache.pulsar.manager.entity.EnvironmentEntity)
2024-08-17 12:38:18.829 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/environments/environment],methods=[DELETE]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.EnvironmentsController.deleteEnvironment(org.apache.pulsar.manager.entity.EnvironmentEntity)
2024-08-17 12:38:18.830 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/environments/environment],methods=[PUT]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.EnvironmentsController.addEnvironment(org.apache.pulsar.manager.entity.EnvironmentEntity)
2024-08-17 12:38:18.830 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/brokers/{cluster}],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BrokersController.getBrokers(java.lang.Integer,java.lang.Integer,java.lang.String)
2024-08-17 12:38:18.831 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/topics/{tenant}/{namespace}/stats],methods=[GET]}" onto public java.util.Map org.apache.pulsar.manager.controller.TopicsController.getTopicsStats(java.lang.Integer,java.lang.Integer,java.lang.String,java.lang.String)
2024-08-17 12:38:18.831 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/{persistent}/{tenant}/{namespace}/{topic}/subscription/{subName}/{messagePosition}],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.TopicsController.peekMessages(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.Integer)
2024-08-17 12:38:18.832 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/topics/{tenant}/{namespace}],methods=[GET]}" onto public java.util.Map org.apache.pulsar.manager.controller.TopicsController.getTopicsByTenantNamespace(java.lang.Integer,java.lang.Integer,java.lang.String,java.lang.String)
2024-08-17 12:38:18.832 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/broker-stats/metrics],methods=[GET]}" onto public org.springframework.http.ResponseEntity org.apache.pulsar.manager.controller.BrokerStatsController.getBrokerStatsMetrics(java.lang.String)
2024-08-17 12:38:18.833 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/api/v1/bookies/{cluster}],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BookiesController.getClusters(java.lang.Integer,java.lang.Integer,java.lang.String)
2024-08-17 12:38:18.833 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/api/v1/bookies/heartbeat/{bookie}],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BookiesController.bookieHeartbeat(java.lang.String)
2024-08-17 12:38:18.833 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/tokens],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BrokerTokensController.getEnvironmentsList(java.lang.Integer,java.lang.Integer)
2024-08-17 12:38:18.834 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/tokens/token],methods=[POST]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BrokerTokensController.updateBrokerToken(org.apache.pulsar.manager.entity.BrokerTokenEntity)
2024-08-17 12:38:18.834 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/tokens/{role}],methods=[DELETE]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BrokerTokensController.deleteBrokerToken(java.lang.String)
2024-08-17 12:38:18.834 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/tokens/{role}],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BrokerTokensController.getBrokerToken(java.lang.String)
2024-08-17 12:38:18.834 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/tokens/token],methods=[PUT]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.BrokerTokensController.addBrokerToken(org.apache.pulsar.manager.entity.BrokerTokenEntity)
2024-08-17 12:38:18.835 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/admin/v2/tenants],methods=[GET]}" onto public org.springframework.http.ResponseEntity> org.apache.pulsar.manager.controller.TenantsController.getTenants(java.lang.Integer,java.lang.Integer)
2024-08-17 12:38:18.835 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/pulsar-manager/csrf-token],methods=[GET]}" onto public org.springframework.http.ResponseEntity org.apache.pulsar.manager.controller.CsrfTokenController.getCsrfToken(javax.servlet.http.HttpServletRequest)
2024-08-17 12:38:18.838 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/swagger-resources/configuration/security]}" onto public org.springframework.http.ResponseEntity springfox.documentation.swagger.web.ApiResourceController.securityConfiguration()
2024-08-17 12:38:18.838 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/swagger-resources/configuration/ui]}" onto public org.springframework.http.ResponseEntity springfox.documentation.swagger.web.ApiResourceController.uiConfiguration()
2024-08-17 12:38:18.839 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/swagger-resources]}" onto public org.springframework.http.ResponseEntity> springfox.documentation.swagger.web.ApiResourceController.swaggerResources()
2024-08-17 12:38:18.841 INFO 15019 --- [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)
2024-08-17 12:38:18.841 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity> org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2024-08-17 12:38:18.911 INFO 15019 --- [main] o.s.b.a.e.web.EndpointLinksResolver : Exposing 2 endpoint(s) beneath base path '/actuator'
2024-08-17 12:38:18.923 INFO 15019 --- [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)
2024-08-17 12:38:18.923 INFO 15019 --- [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)
2024-08-17 12:38:18.924 INFO 15019 --- [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> org.springframework.boot.actuate.endpoint.web.servlet.WebMvcEndpointHandlerMapping.links(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2024-08-17 12:38:19.052 INFO 15019 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)]
2024-08-17 12:38:19.173 INFO 15019 --- [main] .s.s.UserDetailsServiceAutoConfiguration :

Using generated security password: 3f342921-d0ee-4c19-a648-98219259aad7

2024-08-17 12:38:19.304 INFO 15019 --- [main] o.s.s.web.DefaultSecurityFilterChain : Creating filter chain: org.springframework.security.web.util.matcher.AnyRequestMatcher@1, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@1e471884, org.springframework.security.web.context.SecurityContextPersistenceFilter@4dd1548e, org.springframework.security.web.header.HeaderWriterFilter@72324965, org.springframework.security.web.csrf.CsrfFilter@329b331f, org.springframework.security.web.authentication.logout.LogoutFilter@4cc26df, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@1109730f, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3f06ebe0, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@27261190, org.springframework.security.web.session.SessionManagementFilter@63cf578f, org.springframework.security.web.access.ExceptionTranslationFilter@786ff0ea]
2024-08-17 12:38:19.520 WARN 15019 --- [main] o.s.c.n.a.ArchaiusAutoConfiguration : No spring.application.name found, defaulting to 'application'
2024-08-17 12:38:19.521 WARN 15019 --- [main] c.n.c.sources.URLConfigurationSource : No URLs will be polled as dynamic configuration sources.
2024-08-17 12:38:19.521 INFO 15019 --- [main] c.n.c.sources.URLConfigurationSource : To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
2024-08-17 12:38:19.620 INFO 15019 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2024-08-17 12:38:19.827 INFO 15019 --- [main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@6138e79a: startup date [Sat Aug 17 12:38:14 UTC 2024]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@11c9af63
2024-08-17 12:38:19.903 INFO 15019 --- [main] o.a.p.m.interceptor.WebAppConfigurer : Front-end not found at /pulsar-manager/ui. Maybe you are deploying the front-end as a separate process
2024-08-17 12:38:19.905 INFO 15019 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2024-08-17 12:38:19.905 INFO 15019 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2024-08-17 12:38:19.932 INFO 15019 --- [main] .m.m.a.ExceptionHandlerExceptionResolver : Detected @ExceptionHandler methods in customizeExceptionHandler
2024-08-17 12:38:20.010 WARN 15019 --- [main] org.thymeleaf.templatemode.TemplateMode : [THYMELEAF][main] Template Mode 'HTML5' is deprecated. Using Template Mode 'HTML' instead.
2024-08-17 12:38:20.060 INFO 15019 --- [main] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page template: index
2024-08-17 12:38:20.597 INFO 15019 --- [main] o.s.c.n.zuul.ZuulFilterInitializer : Starting filter initializer
2024-08-17 12:38:20.622 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2024-08-17 12:38:20.624 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'dataSource' has been autodetected for JMX exposure
2024-08-17 12:38:20.631 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'environmentManager' has been autodetected for JMX exposure
2024-08-17 12:38:20.632 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'refreshScope' has been autodetected for JMX exposure
2024-08-17 12:38:20.632 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'configurationPropertiesRebinder' has been autodetected for JMX exposure
2024-08-17 12:38:20.635 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'environmentManager': registering with JMX server as MBean [org.springframework.cloud.context.environment:name=environmentManager,type=EnvironmentManager]
2024-08-17 12:38:20.642 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'refreshScope': registering with JMX server as MBean [org.springframework.cloud.context.scope.refresh:name=refreshScope,type=RefreshScope]
2024-08-17 12:38:20.651 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'configurationPropertiesRebinder': registering with JMX server as MBean [org.springframework.cloud.context.properties:name=configurationPropertiesRebinder,context=6138e79a,type=ConfigurationPropertiesRebinder]
2024-08-17 12:38:20.656 INFO 15019 --- [main] o.s.j.e.a.AnnotationMBeanExporter : Located MBean 'dataSource': registering with JMX server as MBean [com.zaxxer.hikari:name=dataSource,type=HikariDataSource]
2024-08-17 12:38:20.662 INFO 15019 --- [main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 2147483647
2024-08-17 12:38:20.662 INFO 15019 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed
2024-08-17 12:38:20.666 INFO 15019 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
2024-08-17 12:38:20.704 INFO 15019 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references
2024-08-17 12:38:20.817 INFO 15019 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getClustersUsingGET_1
2024-08-17 12:38:20.829 INFO 15019 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getEnvironmentsListUsingGET_1
2024-08-17 12:38:20.887 INFO 15019 --- [main] s.a.ScheduledAnnotationBeanPostProcessor : No TaskScheduler/ScheduledExecutorService bean found for scheduled processing
2024-08-17 12:38:20.891 INFO 15019 --- [main] o.a.p.manager.PulsarApplicationListener : Start onApplicationEvent
2024-08-17 12:38:20.956 INFO 15019 --- [pool-2-thread-1] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2024-08-17 12:38:21.068 INFO 15019 --- [pool-2-thread-1] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2024-08-17 12:38:21.088 INFO 15019 --- [pool-2-thread-1] o.s.b.f.xml.XmlBeanDefinitionReader : Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2024-08-17 12:38:21.126 INFO 15019 --- [pool-2-thread-1] o.s.jdbc.support.SQLErrorCodesFactory : SQLErrorCodes loaded: [DB2, Derby, H2, HDB, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]
2024-08-17 12:38:21.136 INFO 15019 --- [main] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
2024-08-17 12:38:21.139 ERROR 15019 --- [pool-2-thread-1] o.s.s.s.TaskUtils$LoggingErrorHandler : Unexpected error occurred in scheduled task.

org.springframework.jdbc.BadSqlGrammarException:
### Error querying database. Cause: org.postgresql.util.PSQLException: ERROR: relation "environments" does not exist
Position: 22
### The error may exist in org/apache/pulsar/manager/mapper/EnvironmentsMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT count(0) FROM environments
### Cause: org.postgresql.util.PSQLException: ERROR: relation "environments" does not exist
Position: 22
; bad SQL grammar []; nested exception is org.postgresql.util.PSQLException: ERROR: relation "environments" does not exist
Position: 22
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) ~[spring-jdbc-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) ~[spring-jdbc-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) ~[mybatis-spring-2.0.4.jar:2.0.4]
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) ~[mybatis-spring-2.0.4.jar:2.0.4]
at com.sun.proxy.$Proxy136.selectList(Unknown Source) ~[na:na]
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) ~[mybatis-spring-2.0.4.jar:2.0.4]
at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:144) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85) ~[mybatis-3.5.4.jar:3.5.4]
at com.sun.proxy.$Proxy141.findEnvironmentsList(Unknown Source) ~[na:na]
at org.apache.pulsar.manager.dao.EnvironmentsRepositoryImpl.getEnvironmentsList(EnvironmentsRepositoryImpl.java:58) ~[pulsar-manager.jar:na]
at org.apache.pulsar.manager.dao.EnvironmentsRepositoryImpl$$FastClassBySpringCGLIB$$30650f82.invoke() ~[pulsar-manager.jar:na]
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:746) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139) ~[spring-tx-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:185) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.apache.pulsar.manager.dao.EnvironmentsRepositoryImpl$$EnhancerBySpringCGLIB$$d3e851b5.getEnvironmentsList() ~[pulsar-manager.jar:na]
at org.apache.pulsar.manager.service.impl.EnvironmentCacheServiceImpl.reloadEnvironments(EnvironmentCacheServiceImpl.java:139) ~[pulsar-manager.jar:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_342]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_342]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_342]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_342]
at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:65) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_342]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [na:1.8.0_342]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_342]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [na:1.8.0_342]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_342]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_342]
at java.lang.Thread.run(Thread.java:750) [na:1.8.0_342]
Caused by: org.postgresql.util.PSQLException: ERROR: relation "environments" does not exist
Position: 22
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2440) ~[postgresql-42.2.5.jar:42.2.5]
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2183) ~[postgresql-42.2.5.jar:42.2.5]
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:308) ~[postgresql-42.2.5.jar:42.2.5]
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:441) ~[postgresql-42.2.5.jar:42.2.5]
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:365) ~[postgresql-42.2.5.jar:42.2.5]
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:143) ~[postgresql-42.2.5.jar:42.2.5]
at org.postgresql.jdbc.PgPreparedStatement.execute(PgPreparedStatement.java:132) ~[postgresql-42.2.5.jar:42.2.5]
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) ~[HikariCP-2.7.9.jar:na]
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) ~[HikariCP-2.7.9.jar:na]
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:324) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109) ~[mybatis-3.5.4.jar:3.5.4]
at com.github.pagehelper.util.ExecutorUtil.executeAutoCount(ExecutorUtil.java:138) ~[pagehelper-5.1.11.jar:na]
at com.github.pagehelper.PageInterceptor.count(PageInterceptor.java:150) ~[pagehelper-5.1.11.jar:na]
at com.github.pagehelper.PageInterceptor.intercept(PageInterceptor.java:97) ~[pagehelper-5.1.11.jar:na]
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61) ~[mybatis-3.5.4.jar:3.5.4]
at com.sun.proxy.$Proxy197.query(Unknown Source) ~[na:na]
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) ~[mybatis-3.5.4.jar:3.5.4]
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) ~[mybatis-3.5.4.jar:3.5.4]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_342]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_342]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_342]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_342]
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) ~[mybatis-spring-2.0.4.jar:2.0.4]
... 30 common frames omitted
```
**To Reproduce**

Deploy helm chart with the following config (I use flux):

```
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: pulsar-dev
spec:
serviceAccountName: dispo-team
releaseName: pulsar-dev
install:
crds: Skip
upgrade:
crds: Skip
chart:
spec:
chart: pulsar
sourceRef:
kind: HelmRepository
name: pulsar
interval: 5m
values:
components:
zookeeper: true
bookkeeper: true
autorecovery: true
broker: true
functions: false
proxy: false
toolset: true
pulsar_manager: true

kube-prometheus-stack:
enabled: false
prometheusOperator:
enabled: false
grafana:
enabled: false
alertmanager:
enabled: false
prometheus:
enabled: false

zookeeper:
podMonitor:
enabled: false
volumes:
data:
size: 1Gi
local_storage: false
storageClassName: longhorn-1rep-sl-retain
datalog:
size: 1Gi
local_storage: false
storageClassName: longhorn-1rep-sl-retain

bookkeeper:
podMonitor:
enabled: false
volumes:
journal:
size: 1Gi
local_storage: false
storageClassName: longhorn-1rep-sl-retain
ledger:
size: 1Gi
local_storage: false
storageClassName: longhorn-1rep-sl-retain
autorecovery:
podMonitor:
enabled: false

broker:
podMonitor:
enabled: false

proxy:
podMonitor:
enabled: false

pulsar_manager:
nodeSelector:
kubernetes.io/arch: amd64
podMonitor:
enabled: false
configData:
URL: "jdbc:postgresql://pulsar-dev-manager-postgresql:5432/pulsar_manager"
admin:
existingSecret: pulsar-dev
ingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod-dns
external-dns.alpha.kubernetes.io/hostname: pulsar-manager.internal.com
external-dns.alpha.kubernetes.io/access: private
ingressClassName: "nginx-internal"
tls:
enabled: true
secretName: "pulsar-manager-dev-tls-secret"
hostname: "pulsar-manager.internal.com"
path: "/"
```

**Expected behavior**
Pulsar manager starts up and I can login.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the Kubernetes and Helm deployment path that initializes PostgreSQL, then inspect the logged SELECT from environments and the EnvironmentsController entry points named in the report. Verify the database schema setup on a fresh installation and confirm that the environments relation exists and pulsar-manager starts without the reported error.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes, postgresql
Domain
databases, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.