This is an automated email from the ASF dual-hosted git repository.
kfaraz pushed a commit to branch 31.0.0
in repository https://gitbox.apache.org/repos/asf/druid.git
The following commit(s) were added to refs/heads/31.0.0 by this push:
new 2b98facdc48 MSQ WorkerResource: Fix timeout handler for
httpGetChannelData. (#17328) (#17330)
2b98facdc48 is described below
commit 2b98facdc4872edc13d1cdac71b4e3761e89fec8
Author: Abhishek Agarwal <[email protected]>
AuthorDate: Fri Oct 11 18:31:01 2024 +0530
MSQ WorkerResource: Fix timeout handler for httpGetChannelData. (#17328)
(#17330)
The timeout handler should fire if the response has not been handled yet
(i.e. if responseResolved was previously false). However, it erroneously
fires only if the response *was* handled. This causes HTTP 500 errors if
the timeout actually does fire. The timeout is 30 seconds, which can be
hit during pipelined queries, if an earlier stage of the query hasn't
produced its first frame within 30 seconds.
This fixes a regression introduced in #17140.
Co-authored-by: Gian Merlino <[email protected]>
---
.../src/main/java/org/apache/druid/msq/rpc/WorkerResource.java | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git
a/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/rpc/WorkerResource.java
b/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/rpc/WorkerResource.java
index 20758883ddb..fd6207662af 100644
---
a/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/rpc/WorkerResource.java
+++
b/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/rpc/WorkerResource.java
@@ -120,12 +120,10 @@ public class WorkerResource
public void onTimeout(AsyncEvent event)
{
if (responseResolved.compareAndSet(false, true)) {
- return;
+ HttpServletResponse response = (HttpServletResponse)
asyncContext.getResponse();
+ response.setStatus(HttpServletResponse.SC_OK);
+ event.getAsyncContext().complete();
}
-
- HttpServletResponse response = (HttpServletResponse)
asyncContext.getResponse();
- response.setStatus(HttpServletResponse.SC_OK);
- event.getAsyncContext().complete();
}
@Override
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]