Skip to content

VirtualStorage implementation for MSQ in druid 37 causing threadpool leak causing native threads exhausted #19904

Description

@simha03

We have using druid 37 and we are facing issue with threadpool not closing for MSQ as its not releasing the threads on task exit. we are exhausting the native threads due to this threads leak. once the threads hit the ulimit value it doesnt allow any new threads creation until we restart the indexer service. The issue is more visible in indexer as MSQ runs on same jvm unlike middle manager where each MSQ will fork different JVM.

[root@xxxxx ~]# ls /proc/32589/task | wc -l
254,869
[root@xxxxx ~]#

254,869 ← the leaker, ~99% thread are VirtualStorageOnDemandLoadingThread

Looks the issue was identified and fixed : dedicated ephemeral storage loading pool for tasks- #19658
#19658
I could see the backporting is done only to druid 38. Can we backport to druid 37 as its is a major break on druid stability running MSQ running on indexers ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions