SteNicholas opened a new pull request, #2455:
URL: https://github.com/apache/celeborn/pull/2455
### What changes were proposed in this pull request?
Introduce `celeborn.master.http.idleTimeout` and
`celeborn.worker.http.idleTimeout` to support idle timeout configuration of
Jetty for `HttpServer`.
### Why are the changes needed?
`ServerConnector` supports HTTP idle timeout configuration via
`jetty.http.idleTimeout`, of which default value is 30000ms that is configured
as `jetty.http.idleTimeout=300000`. `HttpServer` should also support idle
timeout configuration of Jetty, which timeout is as follows:
```
2024-04-12 16:04:00,926 [DEBUG] [master-JettyScheduler-1] -
org.eclipse.jetty.io.IdleTimeout -IdleTimeout.java(161)
-SocketChannelEndPoint@567d3f82{l=/127.0.0.1:9097,r=/127.0.0.1:35276,OPEN,fill=FI,flush=-,to=29999/30000}{io=1/1,kio=1,kro=1}->HttpConnection@2f88da0c[p=HttpParser{s=START,0
of
-1},g=HttpGenerator@796c3666{s=START}]=>HttpChannelOverHttp@63815646{s=HttpChannelState@5c192497{s=IDLE
rs=BLOCKING os=OPEN is=IDLE awp=false se=false i=true
al=0},r=5,c=false/false,a=IDLE,uri=null,age=0} idle timeout check, elapsed:
29999 ms, remaining: 1 ms
2024-04-12 16:04:00,927 [DEBUG] [master-JettyScheduler-1] -
org.eclipse.jetty.io.IdleTimeout -IdleTimeout.java(161)
-SocketChannelEndPoint@567d3f82{l=/127.0.0.1:9097,r=/127.0.0.1:35276,OPEN,fill=FI,flush=-,to=30001/30000}{io=1/1,kio=1,kro=1}->HttpConnection@2f88da0c[p=HttpParser{s=START,0
of
-1},g=HttpGenerator@796c3666{s=START}]=>HttpChannelOverHttp@63815646{s=HttpChannelState@5c192497{s=IDLE
rs=BLOCKING os=OPEN is=IDLE awp=false se=false i=true
al=0},r=5,c=false/false,a=IDLE,uri=null,age=0} idle timeout check, elapsed:
30001 ms, remaining: -1 ms
2024-04-12 16:04:00,927 [DEBUG] [master-JettyScheduler-1] -
org.eclipse.jetty.io.IdleTimeout -IdleTimeout.java(168)
-SocketChannelEndPoint@567d3f82{l=/127.0.0.1:9097,r=/127.0.0.1:35276,OPEN,fill=FI,flush=-,to=30001/30000}{io=1/1,kio=1,kro=1}->HttpConnection@2f88da0c[p=HttpParser{s=START,0
of
-1},g=HttpGenerator@796c3666{s=START}]=>HttpChannelOverHttp@63815646{s=HttpChannelState@5c192497{s=IDLE
rs=BLOCKING os=OPEN is=IDLE awp=false se=false i=true
al=0},r=5,c=false/false,a=IDLE,uri=null,age=0} idle timeout expired
2024-04-12 16:04:00,927 [DEBUG] [master-JettyScheduler-1] -
org.eclipse.jetty.io.FillInterest -FillInterest.java(136) -onFail
FillInterest@6cc48840{AC.ReadCB@2f88da0c{HttpConnection@2f88da0c::SocketChannelEndPoint@567d3f82{l=/127.0.0.1:9097,r=/127.0.0.1:35276,OPEN,fill=FI,flush=-,to=30001/30000}{io=1/1,kio=1,kro=1}->HttpConnection@2f88da0c[p=HttpParser{s=START,0
of
-1},g=HttpGenerator@796c3666{s=START}]=>HttpChannelOverHttp@63815646{s=HttpChannelState@5c192497{s=IDLE
rs=BLOCKING os=OPEN is=IDLE awp=false se=false i=true
al=0},r=5,c=false/false,a=IDLE,uri=null,age=0}}}
java.util.concurrent.TimeoutException: Idle timeout expired: 30001/30000 ms
at
org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:171)
~[jetty-io-9.4.52.v20230823.jar:9.4.52.v20230823]
at org.eclipse.jetty.io.IdleTimeout.idleCheck(IdleTimeout.java:113)
~[jetty-io-9.4.52.v20230823.jar:9.4.52.v20230823]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
~[?:1.8.0_162]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
~[?:1.8.0_162]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
~[?:1.8.0_162]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
~[?:1.8.0_162]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
~[?:1.8.0_162]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
~[?:1.8.0_162]
at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_162]
2024-04-12 16:04:00,927 [DEBUG] [master-JettyScheduler-1] -
org.eclipse.jetty.http.HttpParser -HttpParser.java(1883) -close
HttpParser{s=START,0 of -1}
2024-04-12 16:04:00,927 [DEBUG] [master-JettyScheduler-1] -
org.eclipse.jetty.http.HttpParser -HttpParser.java(1912) -START --> CLOSE
```
### Does this PR introduce _any_ user-facing change?
No.
### How was this patch tested?
No.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]