# Logstash 1.5.4 + Lumberjack 1.0.5 = Mutex Errors

**URL:** <https://discuss.elastic.co/t/logstash-1-5-4-lumberjack-1-0-5-mutex-errors/29173>\
**Category:** Logstash\
**Created:** [September 12, 2015, 7:58am UTC](https://discuss.elastic.co/t/logstash-1-5-4-lumberjack-1-0-5-mutex-errors/29173 "2015-09-12T07:58:51Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![zonywhoop](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/zonywhoop/32/4741_2.png) [@zonywhoop](https://discuss.elastic.co/u/zonywhoop)\
**Post date:** [September 12, 2015, 7:58am UTC](https://discuss.elastic.co/t/logstash-1-5-4-lumberjack-1-0-5-mutex-errors/29173/1 "2015-09-12T07:58:51Z")

</div>

Just upgraded from Logstash 1.4.5 to 1.5.4 and have been beating my head against the wall trying to get lumberjack to work again. My issue is that if tcp/5000 is open (the port I have lumberjack listing on) then logstash will start but then crash a good 30 seconds later - usually right after startup. If I use iptables to drop all inbound packets on port 5000 then logstash will start, take inbound syslog and rabbitmq data, and run happily UNTIL I remove iptables INPUT rule and open the flood gates for lumberjack. When logstash dies, I get the error below in the logs. I've tried changing the USE\_RUBY setting, upgraded from Java 7 to Java 8, and googled my heart out but find very little for "Mutex not locked" and "No message available" in conjunction with Concurrency. Any help would be greatly appreciated.

Error messages are below and system configuration is below that.

```
{:timestamp=>"2015-09-12T02:06:35.168000-0500", :message=>"Lumberjack input: unhandled exception", :exception=>#<ThreadError: Mutex is not locked>, :backtrace=>["org/jruby/ext/thread/Mutex.java:106:in `unlock'", "org/jruby/ext/thread/Mutex.java:151:in `synchronize'", "..."], :level=>:error}

{:timestamp=>"2015-09-12T02:33:58.067000-0500", :message=>"Lumberjack input: unhandled exception", :exception=>#<ConcurrencyError: No message available>, :backtrace=>["org/jruby/ext/thread/ConditionVariable.java:98:in `wait'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-lumberjack-1.0.5/lib/logstash/sized_queue_timeout.rb:30:in `push'", "org/jruby/ext/thread/Mutex.java:149:in `synchronize'",..."], :level=>:error}

```

**Here are my system specs:**

OS: Cent OS 7.1.1503 x64  
RAM: 8GB  
CPUS: 2  
Java: Oracle java version "1.8.0\_60"  
System ruby: ruby 2.0.0p598 (2014-11-13) [x86\_64-linux]  
SELINUX: disabled

**/etc/sysconfig/logstash:**  
LS\_HEAP\_SIZE="3096m"  
LS\_OPEN\_FILES=16384

**/etc/logstash/conf.d/logstash.conf**  
input {  
rabbitmq {  
host =\> "rmq01"  
durable =\> true  
key =\> "prod"  
user =\> "logstash"  
password =\> "password"  
vhost =\> "/logs"  
exchange =\> "logstash"  
queue =\> "prod"  
tags =\> "prod"  
}

rabbitmq {  
host =\> "rmq01"  
durable =\> true  
key =\> "train"  
user =\> "logstash"  
password =\> "password"  
vhost =\> "/logs"  
exchange =\> "logstash"  
queue =\> "train"  
tags =\> "train"  
}

syslog {  
port =\> 1514  
type =\> "Syslog"  
}

lumberjack {  
port =\> 5000  
ssl\_certificate =\> "/opt/logstash/certs/logstash.crt"  
ssl\_key =\> "/opt/logstash/certs/logstash.key"  
tags =\> "prod"  
}  
}

filter {  
-- Filter definitions  
}

output {  
elasticsearch {  
host =\> "elasticcluster01"  
protocol =\> "transport"  
cluster =\> "elasticsearch-01"  
}  
statsd {  
type =\> "IISLog"  
host =\> "statsd01"  
port =\> 2003  
sender =\> "%{hostname}"  
increment =\> "%{statuscode}"  
timing =\> ["timetaken", "%{timetaken}"]  
}

}

--  
Ed

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 5:29am UTC](https://discuss.elastic.co/t/logstash-1-5-4-lumberjack-1-0-5-mutex-errors/29173/2 "2017-07-06T05:29:19Z")

</div>


