problem: incorrect status updates

This commit is contained in:
Igor Artamonov
2021-09-06 17:38:27 -04:00
parent 8c7bb01f80
commit f6134ed470
3 changed files with 126 additions and 2 deletions

View File

@@ -296,9 +296,9 @@ abstract class Multistream(
override fun test(t: UpstreamStatus): Boolean {
val curr = lastRef.updateAndGet { last ->
val changed = last == null
|| t.status > last.status
|| t.status < last.status
|| (last.upstream == t.upstream && t.status != last.status)
|| last.ts.isBefore(Instant.now() - Duration.ofSeconds(60))
|| last.ts.isBefore(t.ts - Duration.ofSeconds(60))
if (changed) {
t
} else {