FAIRDataPoint icon indicating copy to clipboard operation
FAIRDataPoint copied to clipboard

Recurring error "No metadata found for the uri '<client uri>'"

Open louis-vinchon opened this issue 3 years ago • 6 comments

The Question I installed the FDP API and client on a Kubernetes Cluster and I am unable to figure out how to solve this error.

Everytime the Client makes a request to the API, the API throws the following error:

2022-03-04 16:04:32,657 76447 [http-nio-80-exec-9] ERROR nl.dtls.fairdatapoint.api.controller.exception.ExceptionControllerAdvice - No metadata found for the uri '<client uri>'

I assume that it is trying to fetch metadata from the triple store (allegro in my case), but the allegro database is completely empty. And the API does not seem to have risen any errors related to allegro as per the following lines:

2022-03-04 16:03:23,503 7293 [main] INFO  nl.dtls.fairdatapoint.config.RepositoryConfig - Setting up Allegro Graph Store
2022-03-04 16:03:23,508 7298 [main] INFO  nl.dtls.fairdatapoint.config.RepositoryConfig - Successfully configure a RDF repository

Full API logs:

2022-03-04 16:03:17,854 main INFO Log4j appears to be running in a Servlet environment, but there's no log4j-web module available. If you want better web container support, please add the log4j-web JAR to your web archive or server lib directory.
2022-03-04 16:03:17,872 main INFO No Watcher plugin is available for protocol 'jar'

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.5.3)

2022-03-04 16:03:17,977 1767 [main] INFO  nl.dtls.fairdatapoint.Application - Starting Application v1.12.4 using Java 16.0.2 on fdp-api-8445c987f5-dgfbj with PID 1 (/fdp/app.jar started by root in /fdp)
2022-03-04 16:03:17,984 1774 [main] INFO  nl.dtls.fairdatapoint.Application - The following profiles are active: production
2022-03-04 16:03:19,290 3080 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Bootstrapping Spring Data MongoDB repositories in DEFAULT mode.
2022-03-04 16:03:19,435 3225 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 140 ms. Found 13 MongoDB repository interfaces.
2022-03-04 16:03:20,415 4205 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'spring.data.mongodb-org.springframework.boot.autoconfigure.mongo.MongoProperties' of type [org.springframework.boot.autoconfigure.mongo.MongoProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,418 4208 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.data.mongo.MongoDatabaseFactoryDependentConfiguration' of type [org.springframework.boot.autoconfigure.data.mongo.MongoDatabaseFactoryDependentConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,421 4211 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.data.mongo.MongoDatabaseFactoryConfiguration' of type [org.springframework.boot.autoconfigure.data.mongo.MongoDatabaseFactoryConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,424 4214 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration' of type [org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,426 4216 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration$MongoClientSettingsConfiguration' of type [org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration$MongoClientSettingsConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,480 4270 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoClientSettings' of type [com.mongodb.MongoClientSettings] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,485 4275 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.actuate.autoconfigure.metrics.mongo.MongoMetricsAutoConfiguration$MongoConnectionPoolMetricsConfiguration' of type [org.springframework.boot.actuate.autoconfigure.metrics.mongo.MongoMetricsAutoConfiguration$MongoConnectionPoolMetricsConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,489 4279 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration' of type [org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,494 4284 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'management.metrics.export.simple-org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleProperties' of type [org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,499 4289 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'simpleConfig' of type [org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimplePropertiesConfigAdapter] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,505 4295 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration' of type [org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,507 4297 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'micrometerClock' of type [io.micrometer.core.instrument.Clock$1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,526 4316 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'simpleMeterRegistry' of type [io.micrometer.core.instrument.simple.SimpleMeterRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,536 4326 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoConnectionPoolTagsProvider' of type [io.micrometer.core.instrument.binder.mongodb.DefaultMongoConnectionPoolTagsProvider] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,540 4330 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoMetricsConnectionPoolListener' of type [io.micrometer.core.instrument.binder.mongodb.MongoMetricsConnectionPoolListener] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,545 4335 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoMetricsConnectionPoolListenerClientSettingsBuilderCustomizer' of type [org.springframework.boot.actuate.autoconfigure.metrics.mongo.MongoMetricsAutoConfiguration$MongoConnectionPoolMetricsConfiguration$$Lambda$539/0x00000008010096b0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,551 4341 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.actuate.autoconfigure.metrics.mongo.MongoMetricsAutoConfiguration$MongoCommandMetricsConfiguration' of type [org.springframework.boot.actuate.autoconfigure.metrics.mongo.MongoMetricsAutoConfiguration$MongoCommandMetricsConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,555 4345 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoCommandTagsProvider' of type [io.micrometer.core.instrument.binder.mongodb.DefaultMongoCommandTagsProvider] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,558 4348 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoMetricsCommandListener' of type [io.micrometer.core.instrument.binder.mongodb.MongoMetricsCommandListener] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,560 4350 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoMetricsCommandListenerClientSettingsBuilderCustomizer' of type [org.springframework.boot.actuate.autoconfigure.metrics.mongo.MongoMetricsAutoConfiguration$MongoCommandMetricsConfiguration$$Lambda$540/0x000000080100a5a8] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,566 4356 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoPropertiesCustomizer' of type [org.springframework.boot.autoconfigure.mongo.MongoPropertiesClientSettingsBuilderCustomizer] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,606 4396 [main] INFO  org.mongodb.driver.cluster - Cluster created with settings {hosts=[mongo:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms'}
2022-03-04 16:03:20,659 4449 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongo' of type [com.mongodb.client.internal.MongoClientImpl] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,668 4458 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoDatabaseFactory' of type [org.springframework.data.mongodb.core.SimpleMongoClientDatabaseFactory] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,676 4466 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.boot.autoconfigure.data.mongo.MongoDataConfiguration' of type [org.springframework.boot.autoconfigure.data.mongo.MongoDataConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:20,721 4511 [cluster-ClusterId{value='62223848f32c1366c1f9e136', description='null'}-mongo:27017] INFO  org.mongodb.driver.connection - Opened connection [connectionId{localValue:2, serverValue:33}] to mongo:27017
2022-03-04 16:03:20,721 4511 [cluster-rtt-ClusterId{value='62223848f32c1366c1f9e136', description='null'}-mongo:27017] INFO  org.mongodb.driver.connection - Opened connection [connectionId{localValue:1, serverValue:32}] to mongo:27017
2022-03-04 16:03:20,722 4512 [cluster-ClusterId{value='62223848f32c1366c1f9e136', description='null'}-mongo:27017] INFO  org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=mongo:27017, type=STANDALONE, state=CONNECTED, ok=true, minWireVersion=0, maxWireVersion=8, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=26523656}
2022-03-04 16:03:20,799 4589 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoCustomConversions' of type [org.springframework.data.mongodb.core.convert.MongoCustomConversions] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,132 4922 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoMappingContext' of type [org.springframework.data.mongodb.core.mapping.MongoMappingContext] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,174 4964 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#5dbf5634' of type [org.springframework.beans.factory.config.ObjectFactoryCreatingFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,177 4967 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#5dbf5634' of type [org.springframework.beans.factory.config.ObjectFactoryCreatingFactoryBean$TargetBeanObjectFactory] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,187 4977 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mappingMongoConverter' of type [org.springframework.data.mongodb.core.convert.MappingMongoConverter] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,244 5034 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'mongoTemplate' of type [org.springframework.data.mongodb.core.MongoTemplate] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,287 5077 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#2ce45a7b' of type [org.springframework.beans.factory.config.PropertiesFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,289 5079 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#2ce45a7b' of type [java.util.Properties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,301 5091 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#377008df' of type [org.springframework.data.repository.core.support.PropertiesBasedNamedQueries] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,306 5096 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#4cbf4f53' of type [org.springframework.data.repository.core.support.RepositoryFragmentsFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,308 5098 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean '(inner bean)#4cbf4f53' of type [org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,429 5219 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclRepository' of type [org.springframework.data.mongodb.repository.support.MongoRepositoryFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,433 5223 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclRepository' of type [jdk.proxy2.$Proxy140] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,441 5231 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclConfig' of type [nl.dtls.fairdatapoint.config.AclConfig$$EnhancerBySpringCGLIB$$6110aa81] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,445 5235 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'cacheConfig' of type [nl.dtls.fairdatapoint.config.CacheConfig$$EnhancerBySpringCGLIB$$d8fa88b9] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,455 5245 [main] INFO  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)
2022-03-04 16:03:21,464 5254 [main] INFO  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)
2022-03-04 16:03:21,468 5258 [main] INFO  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)
2022-03-04 16:03:21,470 5260 [main] INFO  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)
2022-03-04 16:03:21,483 5273 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'lookupStrategy' of type [org.springframework.security.acls.mongodb.BasicLookupStrategy] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,485 5275 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclService' of type [org.springframework.security.acls.mongodb.MongoDBMutableAclService] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,488 5278 [main] INFO  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)
2022-03-04 16:03:21,497 5287 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler@71dfcf21' 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)
2022-03-04 16:03:21,498 5288 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'aclMethodSecurityConfiguration' of type [nl.dtls.fairdatapoint.config.AclMethodSecurityConfiguration$$EnhancerBySpringCGLIB$$8144ea92] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,506 5296 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'methodSecurityMetadataSource' of type [org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-03-04 16:03:21,851 5641 [main] INFO  org.springframework.boot.web.embedded.tomcat.TomcatWebServer - Tomcat initialized with port(s): 80 (http)
2022-03-04 16:03:21,862 5652 [main] INFO  org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-80"]
2022-03-04 16:03:21,863 5653 [main] INFO  org.apache.catalina.core.StandardService - Starting service [Tomcat]
2022-03-04 16:03:21,863 5653 [main] INFO  org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.50]
2022-03-04 16:03:21,961 5751 [main] INFO  org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext
2022-03-04 16:03:21,961 5751 [main] INFO  org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 3911 ms
2022-03-04 16:03:22,928 6718 [main] INFO  org.mongodb.driver.connection - Opened connection [connectionId{localValue:3, serverValue:34}] to mongo:27017
2022-03-04 16:03:23,098 6888 [main] INFO  nl.dtls.fairdatapoint.service.openapi.OpenApiService - Initializing OpenAPI with generic paths
2022-03-04 16:03:23,099 6889 [main] INFO  nl.dtls.fairdatapoint.service.openapi.OpenApiService - Removing OpenAPI paths: []
2022-03-04 16:03:23,114 6904 [main] INFO  nl.dtls.fairdatapoint.service.openapi.OpenApiService - Adding OpenAPI paths: [/, /spec, /expanded, /page/{childPrefix}, /meta, /meta/state, /members, /members/{userUuid}, /catalog, /catalog/{uuid}, /catalog/{uuid}/spec, /catalog/{uuid}/expanded, /catalog/{uuid}/page/{childPrefix}, /catalog/{uuid}/meta, /catalog/{uuid}/meta/state, /catalog/{uuid}/members, /catalog/{uuid}/members/{userUuid}, /dataset, /dataset/{uuid}, /dataset/{uuid}/spec, /dataset/{uuid}/expanded, /dataset/{uuid}/page/{childPrefix}, /dataset/{uuid}/meta, /dataset/{uuid}/meta/state, /dataset/{uuid}/members, /dataset/{uuid}/members/{userUuid}, /distribution, /distribution/{uuid}, /distribution/{uuid}/spec, /distribution/{uuid}/expanded, /distribution/{uuid}/page/{childPrefix}, /distribution/{uuid}/meta, /distribution/{uuid}/meta/state, /distribution/{uuid}/members, /distribution/{uuid}/members/{userUuid}]
2022-03-04 16:03:23,503 7293 [main] INFO  nl.dtls.fairdatapoint.config.RepositoryConfig - Setting up Allegro Graph Store
2022-03-04 16:03:23,508 7298 [main] INFO  nl.dtls.fairdatapoint.config.RepositoryConfig - Successfully configure a RDF repository
2022-03-04 16:03:23,610 7400 [fdp-task-1] INFO  nl.dtls.fairdatapoint.service.index.event.EventService - Resuming unfinished events
2022-03-04 16:03:23,648 7438 [fdp-task-1] INFO  nl.dtls.fairdatapoint.service.index.event.EventService - Finished unfinished events
2022-03-04 16:03:24,042 7832 [main] INFO  nl.dtls.rdf.migration.runner.RdfProductionMigrationRunner - Production Migration of RDF Store started
2022-03-04 16:03:24,056 7846 [main] INFO  nl.dtls.rdf.migration.runner.RdfProductionMigrationRunner - Production Migration of RDF Store ended
2022-03-04 16:03:24,866 8656 [main] INFO  org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 6.2.0.Final
2022-03-04 16:03:25,761 9551 [main] INFO  org.springframework.security.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@b768a65, org.springframework.security.web.context.SecurityContextPersistenceFilter@411fa0ce, org.springframework.security.web.header.HeaderWriterFilter@de579ff, org.springframework.security.web.authentication.logout.LogoutFilter@6af65f29, nl.dtls.fairdatapoint.api.filter.LoggingFilter@10bea4, nl.dtls.fairdatapoint.api.filter.CORSFilter@19962194, nl.dtls.fairdatapoint.api.filter.JwtTokenFilter@4b97c4ad, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@76cdafa3, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@118041c7, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6897a4a, org.springframework.security.web.session.SessionManagementFilter@26be9a6, org.springframework.security.web.access.ExceptionTranslationFilter@349c4d1c, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@19fec3d6]
2022-03-04 16:03:25,803 9593 [main] INFO  org.springframework.boot.actuate.endpoint.web.EndpointLinksResolver - Exposing 2 endpoint(s) beneath base path '/actuator'
2022-03-04 16:03:25,859 9649 [main] INFO  org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-80"]
2022-03-04 16:03:25,872 9662 [main] INFO  org.springframework.boot.web.embedded.tomcat.TomcatWebServer - Tomcat started on port(s): 80 (http) with context path ''
2022-03-04 16:03:25,897 9687 [main] INFO  nl.dtls.fairdatapoint.Application - Started Application in 8.471 seconds (JVM running for 9.696)
2022-03-04 16:03:25,999 9789 [main] INFO  org.reflections.Reflections - Reflections took 54 ms to scan 2 urls, producing 2 keys and 19 values
2022-03-04 16:03:26,066 9856 [main] INFO  com.github.cloudyrock.mongock.runner.core.executor.MigrationExecutor - Mongock skipping the data migration. All change set items are already executed or there is no change set item.
2022-03-04 16:03:26,066 9856 [main] INFO  com.github.cloudyrock.mongock.driver.core.lock.DefaultLockManager - Mongock releasing the lock
2022-03-04 16:03:26,083 9873 [main] INFO  com.github.cloudyrock.mongock.driver.core.lock.DefaultLockManager - Mongock released the lock

Am I supposed to do an extra step to populate the allegro database myself? And if so, where is it documented?

louis-vinchon avatar Mar 04 '22 16:03 louis-vinchon

Hi @K41eb, thank you for the information. Unfortunately, I don't have direct experience running this on kubernetes. I know of others that have done it (although they might not have used allegrograph), I'll reach out to them.

You shouldn't have to populate the db yourself, so I assume it is a connection issue between the services.

@ylefranc Could you shed some light on this issue?

kburger avatar Mar 09 '22 10:03 kburger

Answer: the triple store's "migration status" is not stored in the triple store itself, so if the triple store is wiped, but not the migration status (stored in Mongo), then the application considers that everything is OK, does not check the triple store (considers it's properly setup), and thus does not try to run the migrations.

louis-vinchon avatar Mar 15 '22 15:03 louis-vinchon

I'm reopening this because the problem remains as long as rdf-migration history is stored in a separate repository.

The issue remains relevant both for v1.x and v2.x (current develop branch). The latter stores rdf-migration history in postgresql instead of mongodb.

dennisvang avatar Apr 11 '25 10:04 dennisvang

Again I run into something similar, using a minimal compose file both for 1.16 and 1.17, running locally.

This setup has no persistent volumes, it uses the in-memory triple store, and it has a health check for mongodb.

The exact same compose file worked many times before without fail, but now I'm getting multiple failures in a row where the fdp remains unhealthy with "No metadata found for the uri 'http://localhost'".

An obvious suspect was the fact that mongo minor version is not pinned, but no new minor version for 4 has been released since last use.

After a couple of tries (down/up), now the same compose file does start properly...

dennisvang avatar May 09 '25 14:05 dennisvang

A legitimate reason for the No metadata found for the uri error is when there is a mismatch between the persistent url specified for the FDP (e.g. INSTANCE_PERSISTENTURL) and the subject of the FDP resource in the triple store.

This can happen, for example, when restoring from a backup into an fdp running on a different domain.

However, this does not appear to be the case in the description above.

A discrepancy may also happen if the persistent url is not explicitly specified. In that case the fdp should fall back on the clientUrl value, but that does not work properly in <=v2 (it falls back on localhost). See #771.

dennisvang avatar Jun 04 '25 09:06 dennisvang

how to reproduce

Here's a minimal reproducible example of the case where the triple store is wiped, but mongo is not.

This MRE uses an ephemeral stack with an in-memory triple store, but a similar scenario can arise in many ways with persistent stacks and external triple stores as well.

  1. Clone FAIRDataTeam/compose
  2. Set up the minimal ephemeral stack
    cd compose/fdp/ephemeral/v1
    docker compose up -d
    
  3. Wait for the stack to become healthy, then tear down the fdp container. This clears the in-memory triple store, but keeps mongo running.
    docker compose down fdp
    
  4. Bring the fdp container back up again. This will skip the initial rdf migrations, because those are still listed in the mongodb as completed.
    docker compose up fdp
    
  5. observe the error in the log output

Note that start/stop instead of up/down produces the same effect here (haven't checked, but pause/unpause should not have this problem).

workaround

A workaround, in this case, would be to delete all documents from the rdfMigration collection in the mongodb, before bringing the fdp container up again (so, before step 5). For example:

docker compose exec mongo mongosh --eval "use fdp" --eval "db.rdfMigration.deleteMany({})"

However, if we do only that, we run into another error:

ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet] - 
    Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception
        [Request processing failed: org.springframework.dao.IncorrectResultSizeDataAccessException:
            Query { "$java" : Query: { "uri" : "http://localhost"}, Fields: {}, Sort: {} } 
            returned non unique result]

This is because there are now two documents in the metadata collection. So, we also need to the clear the metadata collection before bringing the fdp back up:

docker compose exec mongo mongosh --eval "use fdp" --eval "db.metadata.deleteMany({})"

dennisvang avatar Sep 12 '25 08:09 dennisvang