-
Notifications
You must be signed in to change notification settings - Fork 2.4k
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Eureka: DOWN status because of /pause not propagated to registry when "eureka.client.healthcheck.enabled: true" (Brixton.SR7) #1571
Comments
Thinking outload here..... |
That's basically the workaround I'm busy with atm. Two approaches: The latter approach has the extra benefit of of providing a consistent view between the health endpoint and the status reported in Eureka. |
Would this be something you are willing to submit a PR for? |
Our approach was to modify the This approach seems to be the the least invasive solution:
I can submit a PR if all this looks reasonable to you. |
Yeah lets see the the PR so we can review it, thanks! |
Happens in Camden.SR3. |
Happens in Edgware.RELEASE |
@eacdy Indeed... but things have changed since Dalston. Here is what we introduce in the context when
Some words about it:
This workaround may not be very clean, but it seems to work until we find a better solution ;-) |
Please submit the PR |
See spring-cloud#1571 (comment) for more information about the rational behind the changes.
Good Morning, I am using eureka in the latest version and the problem still persists, any news? I can submit a PL with the correction |
Do you mean PR? @brenuart has already submitted one. |
That's right. @ryanjbaxter can you tell me which version of this fix will exit? |
See the PR. We are waiting for @brenuart to address the comments there. |
Damn.. I completely forgot about that issue :( |
@brenuart are you using any palliative solution ??? |
Yes, the one described here above. It is added to the context with the following configuration:
|
PRs welcome to add the |
Any news on this issue ? Any chance to get the PR fixed ? |
there has been no PR |
Yeah I saw there was one but not finished. Not sure what was missing. Would you accept a new PR ? |
See #1571 (comment) for more information about the rational behind the changes.
* Fix for #1571 See #1571 (comment) for more information about the rational behind the changes. Original contributor: Bertrand Renuart <bertrand.renuart@itma.lu>
The
/pause
management endpoint stops the application context.EurekaDiscoveryClientConfiguration
sets the InstanceStatus to DOWN in reaction to the context stop event as follows:This status change triggers an
onDemandeUpdate()
on the InstanceInfoReplicator to propagate the new status back to the Eureka registry. That operation starts with a call todiscoveryClient.refreshInstanceInfo()
followed bydiscoveryClient.register()
(the latter is supposed to update the status on the registry).Unfortunately, the call to
refreshInstanceInfo()
overrides the new status with the value returned by the HealthCheckHandler if one is provided:To summarize:
register()
method is called, the status is back to OK and nothing is updated on the registryThis happens ONLY if Eureka is configured with
eureka.client.healthcheck.enabled: true
.Happens on Brixton.SR7
The text was updated successfully, but these errors were encountered: