After 6:3:1 I/O Dispatcher threads are double the cores

I am using BulkProcessor to index data. I am using a 8core machine.

BulkProcessor.builder(highLevelClient::bulkAsync, listener).setBulkActions(3000)
                .setBulkSize(new ByteSizeValue(50, ByteSizeUnit.MB))
                .setConcurrentRequests(8)
                .setFlushInterval(TimeValue.timeValueMillis(5000))
                .build();

When i was on 6.3.0 i could see that the total number of I/O Dispatcher threads spawned were 8, and all of them were being used.
After migrating to 6.3.1 i have suddenly started seeing 16 threads for I/O Dispatcher, and 8 of them are being used and other 8 are idle.

I had noted this behaviour when i was on 6.1.3 and had set connectionRequestTimeout manually to -1 as suggested in #107216

Is this related to the connectionRequestTimeout(-1) fix in 6.3.1 ?? #30384

@Sanne @pickypg @javanna: Tagging you guys as you guys have background of this issue.

Please don't ping people who are not yet part of the thread.

Apologies if that is not the way.

I thought of giving early feedback for 6.3.1 and the people tagged are closely related to the topic and can answer more accurately.

1 Like

No worries. I understand. I think you could do that the other way. Just add a comment on PR

With a link to your thread on discuss. That way, the team who worked on that PR can decide.

My 2 cents.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.