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

4.x [docs] MP does not handle built-in services (e.g. health) if user has resource with path / #8540

Closed
tjquinno opened this issue Mar 22, 2024 · 2 comments · Fixed by #8580
Assignees
Labels
4.x Version 4.x bug Something isn't working docs MP webserver
Milestone

Comments

@tjquinno
Copy link
Member

tjquinno commented Mar 22, 2024

Environment Details

  • Helidon Version: 4.x
  • Helidon MP
  • JDK version:
  • OS:
  • Docker version (if applicable):

Problem Description

In 3.x, a user could have an MP resource with path / and Helidon-provided services such as /metrics would still work.

In 4.x , if the user has a resource with / Helidon incorrectly routes requests for the Helidon-provided services to the user's / resource.

This is a major breaking change.

Steps to reproduce

  1. In the 3.x MP QuickStart example, change the path on GreetResource from /greet to /, rebuild, run, and access curl http://localhost:8080/metrics. It works. curl http://localhost:8080/ and /Joe acts as they should: greetings to "World" and "Joe" respectively.
  2. In the 4.x MP QuickStart example, change the path the same way, build, and run. The greeting requests work but accessing /metrics gives you "Hello metrics" instead of the actual metrics response.
@tjquinno tjquinno added bug Something isn't working MP webserver 4.x Version 4.x labels Mar 22, 2024
@tjquinno
Copy link
Member Author

See also #8550

There should be a nice way to resolve this by setting the following config in microprofile-config.properties:

server.features.observe.weight = 120

or, equivalently, in SE config:

server:
  features:
    observe:
      weight: 120

There is a bug (see above link) currently preventing this from working in 4.x but it is being actively worked.

@tjquinno tjquinno self-assigned this Mar 27, 2024
@tjquinno tjquinno reopened this Mar 27, 2024
@tjquinno
Copy link
Member Author

Keeping this issue open for adding doc describing the weighting technique.

Also, the MP doc does not have an observability page and should. That'll be part of this issue as well.

@tjquinno tjquinno added the docs label Mar 28, 2024
@tjquinno tjquinno added this to the 4.0.7 milestone Mar 28, 2024
@tjquinno tjquinno changed the title 4.x MP does not handle built-in services (e.g. health) if user has resource with path / 4.x [docs] MP does not handle built-in services (e.g. health) if user has resource with path / Mar 28, 2024
@m0mus m0mus added this to Backlog Aug 12, 2024
@m0mus m0mus moved this to Closed in Backlog Aug 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4.x Version 4.x bug Something isn't working docs MP webserver
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant