I see, that's how it works. Thanks! Slightly related, which made it a little hard to navigate the code. I'm using IntelliJ and for some reason navigating the code in flink-rpc doesn't work. It's not listed as a module. In the Project-view it is there, but with a different icon than e.g flink-runtime. Is there some magic here too?
Juha On Tue, Aug 24, 2021 at 1:21 PM Chesnay Schepler <ches...@apache.org> wrote: > There is some internal magic going on. Have a look at the interface the > handlers work against, you will see that the timeout parameter is annotated > with @RpcTimeout. The AkkaInvocationHandler extracts the timeout based on > this annotation and uses it internally. > > On 24/08/2021 12:05, Juha Mynttinen wrote: > > Hey, > > I was looking at the web.timeout configuration option described as > "Timeout for asynchronous operations by the web monitor in milliseconds". > I'm interested in where and how it's used internally. > > I've understood it's the timeout when the Web UI calls something using Rpc > (Akka). Correct? Unfortunately, I can't spot where the parameter is > actually used so that it would have any effect. Maybe I've missed something? > > The param is defined in WebOptions and used in RestHandlerConfiguration. > The param is stored in LeaderRetrievalHandler [1]. That class merely acts > as a holder for the param and e.g. the REST handlers use it. If we look at > one of the handlers, e.g. ClusterOverviewHandler, in the end it > calls requestClusterOverview in Dispatcher [2]. That has two usages of the > timeOut, but if you follow them all the way, the param is unused. I've > checked multiple handlers and I couldn't spot any that would really use the > param for something. > > Retrieving the leader (that is needed before it can be called) has its own > timeout [3], but AFAIK that's hard-coded and doesn't have anything to do > with web.timeout. > > So, simple question - where's the param used? I hope I've just missed > something, and it's used somewhere.... > > [1] > https://github.com/apache/flink/blob/c6997c97c575d334679915c328792b8a3067cfb5/flink-runtime/src/main/java/org/apache/flink/runtime/rest/handler/LeaderRetrievalHandler.java#L57 > [2] > https://github.com/apache/flink/blob/4a78097d0385749daceafd8326930c8cc5f26f1a/flink-runtime/src/main/java/org/apache/flink/runtime/dispatcher/Dispatcher.java#L537 > [3] > https://github.com/apache/flink/blob/026142d7770afb285d8e73d0aea5939881d3d713/flink-runtime/src/main/java/org/apache/flink/runtime/entrypoint/component/DefaultDispatcherResourceManagerComponentFactory.java#L140 > > Regards, > Juha > > -- > Regards, > Juha > > > -- Regards, Juha