How many workers do you have running?
I have reformatted the shutdown_watcher log message.
{
"inflight_count"=>0,
"stalling_thread_info"=>{
"other"=>[
{"thread_id"=>24, "name"=>"[main]<http", "current_call"=>"[...]/vendor/bundle/jruby/1.9/gems/logstash-input-http-3.0.5/lib/logstash/inputs/http.rb:168:in `join'"}
],
["LogStash::Filters::Drop", {"id"=>"15c34a8f248d3b1cdf49920834969b014bf6fe99-14"}]=>[
{"thread_id"=>20, "name"=>"[main]>worker0", "current_call"=>"[...]/logstash-core/lib/logstash/util/wrapped_acked_queue.rb:214:in `lock'"},
{"thread_id"=>21, "name"=>"[main]>worker1", "current_call"=>"[...]/logstash-core/lib/logstash/util/wrapped_acked_queue.rb:214:in `lock'"},
{"thread_id"=>22, "name"=>"[main]>worker2", "current_call"=>"[...]/logstash-core/lib/logstash/util/wrapped_acked_queue.rb:214:in `lock'"},
{"thread_id"=>23, "name"=>"[main]>worker3", "current_call"=>"[...]/logstash-core/lib/logstash/util/wrapped_acked_queue.rb:188:in `lock'"}
]
}
}
The "LogStash::Filters::Drop" bit is misleading - its simply the last filter that the thread was known to have called.
What is interesting though, is the line that each thread (id=20 to 23) is blocked on.
Those on line 214 of the wrapped_acked_queue.rb
are waiting on the lock to ack a batch.
The one on line 188 of the same file is waiting on the lock to read a batch.
Ironically, the pipeline reporter (via shutdown watcher) that is building the stalling_thread info is not helping the situation by taking the very lock that the threads then report to be waiting on!
Also, investigating the http thread id=24, it is stuck on join
on logstash/inputs/http.rb:168
but that thread is stuck in a forever loop - while stop has been called the loop does not exit if the http thread pool is all stuck on a full PQ write.
However, the filters and outputs do not seem to be dead-locked because if they were the shutdown watcher will fail the acquire the lock it needs to build the log line that you are getting so many of.
Some additional PQ concurrency bugs were fixed in 5.6.2, you should upgrade.