You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We noticed that the feign.http2client.Http2Client during high load will generate a lot of inactive threadsL:
Namely during the execute part the client will call the getOrCreateClient() method.
If the Http2Client was created using the default constructor.
Then the getOrCreateClient() method will always create a new http client along with a new threadpool.
This is because the options supplied during the request do not match the options used during the initial creation.
I.e. the code client.connectTimeout() .map(timeout -> timeout.toMillis() != options.connectTimeoutMillis()) .orElse(true); will always return true.
Hence during each request a new client is instantiated along with a new threadpool.
During high load this will cause the application to run out of memory.
The text was updated successfully, but these errors were encountered:
We noticed that the feign.http2client.Http2Client during high load will generate a lot of inactive threadsL:
Namely during the
execute
part the client will call thegetOrCreateClient()
method.If the Http2Client was created using the default constructor.
Then the
getOrCreateClient()
method will always create a new http client along with a new threadpool.This is because the options supplied during the request do not match the options used during the initial creation.
I.e. the code
client.connectTimeout() .map(timeout -> timeout.toMillis() != options.connectTimeoutMillis()) .orElse(true);
will always return true.Hence during each request a new client is instantiated along with a new threadpool.
During high load this will cause the application to run out of memory.
The text was updated successfully, but these errors were encountered: