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

Retry mechanism without delay causing failures #2105

Closed
liran2000 opened this issue Aug 2, 2022 · 4 comments
Closed

Retry mechanism without delay causing failures #2105

liran2000 opened this issue Aug 2, 2022 · 4 comments

Comments

@liran2000
Copy link

As can be seen from log below, the request is slower than the immediate interval, causing unexpected error.

Issue happens in production.
Spring boot admin version: 2.6.6

Requested solution:
Retry mechanism with proper delay.
Notice:
PR with a solution suggestion is expected to be opened soon.

[parallel-1] WARN  d.c.b.a.s.services.IntervalCheck - Unexpected error in status-check
reactor.core.Exceptions$OverflowException: Could not emit tick 104 due to lack of requests (interval doesn't support small downstream requests that replenish slower than the ticks)
	at reactor.core.Exceptions.failWithOverflow(Exceptions.java:233)
	at reactor.core.publisher.FluxInterval$IntervalRunnable.run(FluxInterval.java:132)
	at reactor.core.scheduler.PeriodicWorkerTask.call(PeriodicWorkerTask.java:59)
	at reactor.core.scheduler.PeriodicWorkerTask.run(PeriodicWorkerTask.java:73)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:750)

And before that:
[parallel-1] INFO  d.c.b.a.s.services.StatusUpdater - Couldn't retrieve status for Instance...
java.util.concurrent.TimeoutException: Did not observe any item or terminal signal within 10000ms in 'map' (and no fallback has been configured)
	at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.handleTimeout(FluxTimeout.java:295)
	Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: 
Error has been observed at the following site(s):
	*__checkpoint ⇢ Request to GET health [DefaultWebClient]
Original Stack Trace:
		at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.handleTimeout(FluxTimeout.java:295)
		at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.doTimeout(FluxTimeout.java:280)
		at reactor.core.publisher.FluxTimeout$TimeoutTimeoutSubscriber.onNext(FluxTimeout.java:419)
		at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79)
		at reactor.core.publisher.MonoDelay$MonoDelayRunnable.propagateDelay(MonoDelay.java:271)
		at reactor.core.publisher.MonoDelay$MonoDelayRunnable.run(MonoDelay.java:286)
		at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
		at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
		at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at java.lang.Thread.run(Thread.java:750)

@liran2000
Copy link
Author

PR 2106 opened as a solution for this issue.

@SteKoe can someone please review and approve workflow ?

@SteKoe
Copy link
Contributor

SteKoe commented Aug 2, 2022

Hi @liran2000,

thanks for your contribution. We have merged the fix into the current master branch.

@SteKoe SteKoe closed this as completed Aug 2, 2022
@placaze
Copy link

placaze commented Aug 16, 2022

It looks like we have this same issue with Spring Boot Admin 2.6.8. Do you think this fix could be cherry-picked in the 2.6.x branch?

Spring Boot 2.6.11 will be out on Thursday. It could be cool to have a synchronized release of SBA on the same day.

erikpetzold pushed a commit that referenced this issue Aug 19, 2022
Co-authored-by: Liran M <77168114+liran2000@users.noreply.github.com>
@erikpetzold
Copy link
Member

@placaze 2.6.9 has just been released

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

No branches or pull requests

4 participants