Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FDP in the latest (develop) docker image cannot start #581

Open
mirzov opened this issue Nov 7, 2024 · 6 comments
Open

FDP in the latest (develop) docker image cannot start #581

mirzov opened this issue Nov 7, 2024 · 6 comments
Assignees

Comments

@mirzov
Copy link

mirzov commented Nov 7, 2024

What components are related to the issue?

Other (specify in text)

Which FDP are you using?

My local instance

Version

https://hub.docker.com/layers/fairdata/fairdatapoint/develop/images/sha256-ed38ca1f97b83bba4738c80d838259fa409fd956d17f98791f7c69196275fa1f?context=explore

What happened?

Trying to get the latest development docker image working, prepared the following docker-compose setup:
https://github.com/ICOS-Carbon-Portal/meta/tree/28c90bcd2e7a417302b559f125758d6a5c98ac79/src/main/docker/fdp

FDP server startup failed, the logs complain about lack of Spring Bean definition for type org.fairdatateam.rdf.migration.database.RdfMigrationRepository. The culprit seems to be this method argument.

In addition, the fdp docker log contains many messages about Spring Data MongoDB. Should it not have been removed when moving to Postgres? The output from docker logs fdp is included.

Relevant log output

***************************
APPLICATION FAILED TO START
***************************

Description:

Parameter 0 of method rdfProductionMigrationRunner in org.fairdatapoint.config.RepositoryMigrationConfig required a bean of type 'org.fairdatateam.rdf.migration.database.RdfMigrationRepository' that could not be found.


Action:

Consider defining a bean of type 'org.fairdatateam.rdf.migration.database.RdfMigrationRepository' in your configuration.
click to see full logs
INFO StatusConsoleListener jar:nested:/fdp/app.jar/!BOOT-INF/classes/!/log4j2.xml does not support dynamic reconfiguration
2024-11-07 13:16:04,933 1067 [background-preinit] INFO  org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final
2024-11-07 13:16:05,014 1148 [main] INFO  org.fairdatapoint.Application - Starting Application v1.17.1 using Java 21.0.5 with PID 1 (/fdp/app.jar started by root in /fdp)
2024-11-07 13:16:05,017 1151 [main] INFO  org.fairdatapoint.Application - The following 1 profile is active: "production"
2024-11-07 13:16:06,352 2486 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
2024-11-07 13:16:06,354 2488 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2024-11-07 13:16:06,490 2624 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 130 ms. Found 22 JPA repository interfaces.
2024-11-07 13:16:06,502 2636 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
2024-11-07 13:16:06,502 2636 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Bootstrapping Spring Data MongoDB repositories in DEFAULT mode.
2024-11-07 13:16:06,512 2646 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.ResourceDefinitionRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,512 2646 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.SearchSavedQueryRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,513 2647 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.MetadataSchemaVersionRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,513 2647 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.ResourceDefinitionChildRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,513 2647 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.ResourceDefinitionLinkRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,513 2647 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.ApiKeyRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,513 2647 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.ResourceDefinitionChildMetadataRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,513 2647 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.IndexWebhookRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,514 2648 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.MembershipRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,514 2648 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.MetadataSchemaRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,514 2648 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.SettingsSearchFilterItemRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,514 2648 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.UserAccountRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,514 2648 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.IndexSettingsRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,514 2648 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.SettingsMetricRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.MetadataSchemaUsageRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.MetadataSchemaExtensionRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.SettingsSearchFilterRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.SettingsAutocompleteSourceRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.MembershipPermissionRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.IndexEventRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,515 2649 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.IndexEntryRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,516 2650 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport - Spring Data MongoDB - Could not safely identify store assignment for repository candidate interface org.fairdatapoint.database.db.repository.SettingsRepository; If you want this repository to be a MongoDB repository, consider annotating your entities with one of these annotations: org.springframework.data.mongodb.core.mapping.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.mongodb.repository.MongoRepository
2024-11-07 13:16:06,516 2650 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 13 ms. Found 0 MongoDB repository interfaces.
2024-11-07 13:16:07,056 3190 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari' of type [org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,068 3202 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration' of type [org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,071 3205 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'stringOrNumberMigrationVersionConverter' of type [org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration$StringOrNumberToMigrationVersionConverter] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,091 3225 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'spring.datasource-org.springframework.boot.autoconfigure.jdbc.DataSourceProperties' of type [org.springframework.boot.autoconfigure.jdbc.DataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,096 3230 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$PooledDataSourceConfiguration' of type [org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$PooledDataSourceConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,098 3232 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'jdbcConnectionDetails' of type [org.springframework.boot.autoconfigure.jdbc.PropertiesJdbcConnectionDetails] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,114 3248 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'dataSource' of type [com.zaxxer.hikari.HikariDataSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,127 3261 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclConfig' of type [org.fairdatapoint.config.AclConfig$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,131 3265 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'cacheConfig' of type [org.fairdatapoint.config.CacheConfig$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,135 3269 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'cacheManager' of type [org.springframework.cache.concurrent.ConcurrentMapCacheManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,138 3272 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'permissionGrantingStrategy' of type [org.springframework.security.acls.domain.DefaultPermissionGrantingStrategy] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,142 3276 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclAuthorizationStrategy' of type [org.springframework.security.acls.domain.AclAuthorizationStrategyImpl] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,144 3278 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclCache' of type [org.springframework.security.acls.domain.SpringCacheBasedAclCache] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,157 3291 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'lookupStrategy' of type [org.springframework.security.acls.jdbc.BasicLookupStrategy] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,161 3295 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclService' of type [org.springframework.security.acls.jdbc.JdbcMutableAclService] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,165 3299 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'defaultMethodSecurityExpressionHandler' of type [org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,168 3302 [main] WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclMethodSecurityConfiguration' of type [org.fairdatapoint.config.AclMethodSecurityConfiguration$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthEndpointGroupsBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-11-07 13:16:07,446 3580 [main] INFO  org.springframework.boot.web.embedded.tomcat.TomcatWebServer - Tomcat initialized with port 80 (http)
2024-11-07 13:16:07,456 3590 [main] INFO  org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-80"]
2024-11-07 13:16:07,457 3591 [main] INFO  org.apache.catalina.core.StandardService - Starting service [Tomcat]
2024-11-07 13:16:07,457 3591 [main] INFO  org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.20]
2024-11-07 13:16:07,485 3619 [main] INFO  org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext
2024-11-07 13:16:07,486 3620 [main] INFO  org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2388 ms
2024-11-07 13:16:07,732 3866 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
2024-11-07 13:16:07,949 4083 [main] INFO  com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@41289e88
2024-11-07 13:16:07,951 4085 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
2024-11-07 13:16:08,062 4196 [main] INFO  org.flywaydb.core.internal.license.VersionPrinter - Flyway Community Edition 9.22.3 by Redgate
2024-11-07 13:16:08,062 4196 [main] INFO  org.flywaydb.core.internal.license.VersionPrinter - See release notes here: https://rd.gt/416ObMi
2024-11-07 13:16:08,062 4196 [main] INFO  org.flywaydb.core.internal.license.VersionPrinter - 
2024-11-07 13:16:08,080 4214 [main] INFO  org.flywaydb.core.FlywayExecutor - Database: jdbc:postgresql://postgres:5432/fdp (PostgreSQL 15.8)
2024-11-07 13:16:08,128 4262 [main] INFO  org.flywaydb.core.internal.command.DbValidate - Successfully validated 1 migration (execution time 00:00.028s)
2024-11-07 13:16:08,138 4272 [main] INFO  org.flywaydb.core.internal.command.DbMigrate - Current version of schema "public": 0001.0
2024-11-07 13:16:08,140 4274 [main] INFO  org.flywaydb.core.internal.command.DbMigrate - Schema "public" is up to date. No migration necessary.
2024-11-07 13:16:08,252 4386 [main] INFO  org.hibernate.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default]
2024-11-07 13:16:08,310 4444 [main] INFO  org.hibernate.Version - HHH000412: Hibernate ORM core version 6.4.4.Final
2024-11-07 13:16:08,345 4479 [main] INFO  org.hibernate.cache.internal.RegionFactoryInitiator - HHH000026: Second-level cache disabled
2024-11-07 13:16:08,477 4611 [main] WARN  org.hibernate.orm.deprecation - HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default)
2024-11-07 13:16:08,639 4773 [main] INFO  org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer
2024-11-07 13:16:09,943 6077 [main] INFO  org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration)
2024-11-07 13:16:09,945 6079 [main] INFO  org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default'
2024-11-07 13:16:10,557 6691 [main] INFO  org.fairdatapoint.config.RepositoryConfig - Setting up InMemory Store
2024-11-07 13:16:10,571 6705 [main] INFO  org.fairdatapoint.config.RepositoryConfig - Successfully configure a RDF repository
2024-11-07 13:16:10,626 6760 [main] INFO  org.fairdatapoint.config.RepositoryConfig - Setting up InMemory Store
2024-11-07 13:16:10,626 6760 [main] INFO  org.fairdatapoint.config.RepositoryConfig - Successfully configure a RDF repository
2024-11-07 13:16:10,986 7120 [main] INFO  org.springframework.data.jpa.repository.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used.
2024-11-07 13:16:11,477 7611 [main] INFO  org.fairdatapoint.service.openapi.OpenApiService - Initializing OpenAPI with generic paths
2024-11-07 13:16:11,477 7611 [main] INFO  org.fairdatapoint.service.openapi.OpenApiService - Removing OpenAPI paths: []
2024-11-07 13:16:11,479 7613 [main] INFO  org.fairdatapoint.service.openapi.OpenApiService - Adding OpenAPI paths: []
2024-11-07 13:16:11,782 7916 [fdp-task-1] INFO  org.fairdatapoint.service.index.event.EventService - Resuming unfinished events
2024-11-07 13:16:11,789 7923 [fdp-task-1] INFO  org.fairdatapoint.service.index.event.EventService - Finished unfinished events
2024-11-07 13:16:12,064 8198 [main] WARN  org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'rdfProductionMigrationRunner' defined in class path resource [org/fairdatapoint/config/RepositoryMigrationConfig.class]: Unsatisfied dependency expressed through method 'rdfProductionMigrationRunner' parameter 0: No qualifying bean of type 'org.fairdatateam.rdf.migration.database.RdfMigrationRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}
2024-11-07 13:16:12,070 8204 [main] INFO  org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default'
2024-11-07 13:16:12,072 8206 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated...
2024-11-07 13:16:12,074 8208 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed.
2024-11-07 13:16:12,077 8211 [main] INFO  org.apache.catalina.core.StandardService - Stopping service [Tomcat]
2024-11-07 13:16:12,097 8231 [main] INFO  org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLogger - 

Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.
2024-11-07 13:16:12,121 8255 [main] ERROR org.springframework.boot.diagnostics.LoggingFailureAnalysisReporter - 

***************************
APPLICATION FAILED TO START
***************************

Description:

Parameter 0 of method rdfProductionMigrationRunner in org.fairdatapoint.config.RepositoryMigrationConfig required a bean of type 'org.fairdatateam.rdf.migration.database.RdfMigrationRepository' that could not be found.


Action:

Consider defining a bean of type 'org.fairdatateam.rdf.migration.database.RdfMigrationRepository' in your configuration.
@dennisvang dennisvang self-assigned this Nov 12, 2024
@dennisvang
Copy link
Contributor

@mirzov Thanks for the detailed report. I'm trying to pick up some of the slack while familiarizing myself with the FDP codebase, so let's see if we can figure this out.

On my system the develop branch runs without issue if I run the FDP from source using the development profile:

mvn spring-boot:run -Dspring-boot.run.profiles=development

(with postgres in a docker container)

Tests also pass, so it looks like this case slipped through the cracks of the test suite.

Looking more closely, the rdfProductionMigrationRunner (from the error message) is only used when the production profile is active:

@Profile(Profiles.PRODUCTION)
public RdfProductionMigrationRunner rdfProductionMigrationRunner(

Sure enough, the error can be reproduced on a local system, running the FDP from source, by activating the production profile:

mvn spring-boot:run -Dspring-boot.run.profiles=production

At least this indicates that the issue is not limited to the Docker image.

While I'm looking for a solution or workaround, perhaps @MarekSuchanek could tell us whether this part is still under development?

@dennisvang
Copy link
Contributor

Just for reference:

file: ./Dockerfile.build

ENTRYPOINT java -jar app.jar --spring.profiles.active=production --spring.config.location=classpath:/application.yml,classpath:/application-production.yml,file:/fdp/application.yml

@dennisvang
Copy link
Contributor

In addition, the fdp docker log contains many messages about Spring Data MongoDB. Should it not have been removed when moving to Postgres? The output from docker logs fdp is included.

It turns out the org.fairdatateam.rdf.migration.database.RdfMigrationRepository from the error message, which is part of the FAIRDataTeam/spring-rdf-migration dependency, is still configured to use MongoDB (source):

public interface RdfMigrationRepository extends MongoRepository<RdfMigration, String> {

}

@mirzov
Copy link
Author

mirzov commented Nov 14, 2024

Hi Dennis,

Nice that there is someone working on the codebase now! I later found that just deleting the file with RdfMigrationRepository class did not prevent the project from building, and the server could start then. However, after packaging and "dockerizing" it, attempts to use the resulting container together with matching Postgres and latest published FDP client were not successful (login with the default credentials was rejected, front page was showing 404 message from a REST call).

@dennisvang
Copy link
Contributor

[...] just deleting the file with RdfMigrationRepository class did not prevent the project from building, and the server could start then.

By removing the config file, the server will indeed start. However, this causes the rdf migration steps to be skipped, so the triple store will not be populated with initial data.

However, after packaging and "dockerizing" it, attempts to use the resulting container together with matching Postgres and latest published FDP client were not successful (login with the default credentials was rejected [...]

Setting up the postgres db, FDP, and FDP client, with the proper ports, I can get the login to work (user data are stored in postgres).

[...] front page was showing 404 message from a REST call).

I suppose the status 404 is expected, because there is no data in the triple store, since the migrations have not been executed.
As a result, we see messages like

ERROR org.fairdatapoint.api.controller.exception.ExceptionControllerAdvice - No metadata found for the uri 'http://localhost:8080'

Apparently, the development profile uses a different migration runner, viz. RdfDevelopmentMigrationRunner, which does work with postgres, whereas the production profile relies on the external RdfProductionMigrationRunner from the spring-rdf-migration dependency, which has not been adapted to postgres yet.

The first priority would then be to adapt the RdfProductionMigrationRunner to support postgres. If I understand correctly, it only uses the db to keep track of the RDF migrations that have been executed.

In addition, if we look at the production rdf migrations for the develop branch, it looks like those have not been fully adapted to postgres yet. Compare, e.g. with the production migrations for v1.17.2.

It would be great if @MarekSuchanek could shed some light on this.

@dennisvang
Copy link
Contributor

@mirzov Although I'm working on the current issue, the develop branch (and corresponding Docker image) remains a work-in-progress, so it is likely to contain additional loose ends.

For this reason it is probably safer to stick to one of the supported releases for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants