[ 
https://issues.apache.org/jira/browse/JAMES-3117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17254717#comment-17254717
 ] 

Benoit Tellier commented on JAMES-3117:
---------------------------------------

https://github.com/linagora/james-project/pull/4166

If some checks exceeds the reporting period, we end up overrunning
intermediate buffers.

{code:java}
reactor.core.Exceptions$ErrorCallbackNotImplemented: 
reactor.core.Exceptions$OverflowException: Could not emit tick 6784 due to lack 
of requests (interval doesn't support small downstream requests that replenish 
slower than the ticks)
Caused by: reactor.core.Exceptions$OverflowException: Could not emit tick 6784 
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:234)
    at 
reactor.core.publisher.FluxInterval$IntervalRunnable.run(FluxInterval.java:130)
    at 
reactor.core.scheduler.PeriodicWorkerTask.call(PeriodicWorkerTask.java:59)
    at reactor.core.scheduler.PeriodicWorkerTask.run(PeriodicWorkerTask.java:73)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown 
Source)
    at java.base/java.util.concurrent.FutureTask.runAndReset(Unknown Source)
    at 
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown
 Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown 
Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown 
Source)
    at java.base/java.lang.Thread.run(Unknown Source)
{code}

It looks safe to consider a check exceeding the reporting period
as failed, thus preventing the buffer overrun.

> Periodically log HealthChecks
> -----------------------------
>
>                 Key: JAMES-3117
>                 URL: https://issues.apache.org/jira/browse/JAMES-3117
>             Project: James Server
>          Issue Type: Improvement
>            Reporter: René Cordier
>            Priority: Major
>
> Heathy => nothing
> Degraded => WARN
> Unhealthy -> ERROR
> * Check every minute, log directly upon status change
> * Otherwise re-log current status every 30 minutes



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to