Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • I Indexer
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
    • Locked files
  • Issues 27
    • Issues 27
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 10
    • Merge requests 10
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Open Subsurface Data Universe SoftwareOpen Subsurface Data Universe Software
  • Platform
  • System
  • Indexer
  • Issues
  • #74
Closed
Open
Issue created Aug 23, 2022 by Rustam Lotsmanenko (EPAM)@Rustam_LotsmanenkoMaintainer

Not possible to upgrade core-common in parent pom without migration from springfox to springdoc-openapi

Currently, in Indexer root pom core-common dependency is quite outdated and furthermore points to release candidate versions which could be easily erased during the repository clean-up routine:
https://community.opengroup.org/osdu/platform/system/indexer-service/-/blob/master/pom.xml#L16

This core-common version propagates old spring-boot dependencies to provider modules:

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ indexer-service ---
[INFO] org.opengroup.osdu.indexer:indexer-service:pom:0.17.0-SNAPSHOT
[INFO] +- org.opengroup.osdu:os-core-common:jar:0.14.0-rc8:compile
[INFO] |  +- org.springframework.boot:spring-boot-starter-web:jar:2.4.12:compile
[INFO] |  |  +- org.springframework.boot:spring-boot-starter:jar:2.4.12:compile
[INFO] |  |  |  +- org.springframework.boot:spring-boot:jar:2.4.12:compile

But if we upgrade it to the latest release version 16.01 it will bring new spring dependencies:

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ indexer-service ---
[INFO] org.opengroup.osdu.indexer:indexer-service:pom:0.17.0-SNAPSHOT
[INFO] +- org.opengroup.osdu:os-core-common:jar:0.16.1:compile
[INFO] |  +- org.springframework.boot:spring-boot-starter-web:jar:2.7.2:compile
[INFO] |  |  +- org.springframework.boot:spring-boot-starter:jar:2.7.2:compile
[INFO] |  |  |  +- org.springframework.boot:spring-boot:jar:2.7.2:compile

And they are not compatible with spring-fox that used for API documentation by Indexer service:
https://community.opengroup.org/osdu/platform/system/indexer-service/-/blob/master/pom.xml#L150

Since spring-fox does not get updates anymore and is not compatible with new versions of spring-boot, it will block us in further dependency upgrades:
https://github.com/springfox/springfox/issues/3462

Upgrade will cause runtime errors and the Indexer service will not be able to start up:

org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181)
	at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
	at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
	at java.lang.Iterable.forEach(Iterable.java:75)
	at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
	at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:935)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:586)
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734)
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)
	at org.opengroup.osdu.indexer.IndexerGcpApplication.main(IndexerGcpApplication.java:33)
Caused by: java.lang.NullPointerException: null
	at springfox.documentation.spring.web.WebMvcPatternsRequestConditionWrapper.getPatterns(WebMvcPatternsRequestConditionWrapper.java:56)
Assignee
Assign to
Time tracking