From 21c9111bb64bcd03ccb5bee1ff45b65850c4f186 Mon Sep 17 00:00:00 2001 From: Ludovic Orban Date: Tue, 25 Jun 2024 10:14:16 +0200 Subject: [PATCH] #11932 fix H3 message flusher Signed-off-by: Ludovic Orban --- .../java/org/eclipse/jetty/http3/MessageFlusher.java | 12 ++++++++---- .../org/eclipse/jetty/util/IteratingCallback.java | 4 ++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/jetty-core/jetty-http3/jetty-http3-common/src/main/java/org/eclipse/jetty/http3/MessageFlusher.java b/jetty-core/jetty-http3/jetty-http3-common/src/main/java/org/eclipse/jetty/http3/MessageFlusher.java index 8f0ae115d815..a1192c02a3a9 100644 --- a/jetty-core/jetty-http3/jetty-http3-common/src/main/java/org/eclipse/jetty/http3/MessageFlusher.java +++ b/jetty-core/jetty-http3/jetty-http3-common/src/main/java/org/eclipse/jetty/http3/MessageFlusher.java @@ -88,8 +88,9 @@ protected Action process() return Action.SCHEDULED; } + // TODO this should be onSuccess() @Override - protected void onSuccess() + public void succeeded() { if (LOG.isDebugEnabled()) LOG.debug("succeeded to write {} on {}", entry, this); @@ -98,20 +99,23 @@ protected void onSuccess() entry.callback.succeeded(); entry = null; + + super.succeeded(); } @Override - protected void onCompleteFailure(Throwable cause) + public void failed(Throwable x) { if (LOG.isDebugEnabled()) - LOG.debug("failed to write {} on {}", entry, this, cause); + LOG.debug("failed to write {} on {}", entry, this, x); accumulator.release(); - entry.callback.failed(cause); + entry.callback.failed(x); entry = null; // Continue the iteration. + // TODO this is pure evil! super.succeeded(); } diff --git a/jetty-core/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java b/jetty-core/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java index 6fc58187dbb7..76d3bff375c0 100644 --- a/jetty-core/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java +++ b/jetty-core/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java @@ -356,7 +356,7 @@ else if (notifyCompleteFailure != null) * to call {@code super.succeeded()}. */ @Override - public final void succeeded() + public void succeeded() { boolean process = false; try (AutoLock ignored = _lock.lock()) @@ -409,7 +409,7 @@ public final void succeeded() * @see #isFailed() */ @Override - public final void failed(Throwable x) + public void failed(Throwable x) { boolean failure = false; try (AutoLock ignored = _lock.lock())