-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pipeline shutdown can be blocked by stdin input #1769
Comments
From another thread, I have attempted:
None are effective. Closing doesn't interrupt any active reads. IO::select always says $stdin is ready to read even when there is no data. |
Contrast to MRI 2.1.2:
|
|
looks related: http://jira.codehaus.org/browse/JRUBY-5723 |
Just a few notes, as I looked at this a bit last evening.
The only options I see for this are
|
(reposting from hipchat) |
Is it possible to have the Getting Started documentation updated, until the issue is fixed? http://logstash.net/docs/1.4.2/tutorials/getting-started-with-logstash in the "Logstash in two commands" section. |
Note: I'm unable to get it to close, even with CTRL+D. I have to manually kill the agent using Also, here is the config i'm running with, which doesn't use stdio as far as I can tell:
When I had it running under I can also provide a Vagrantfile where this issue is reproducible (at least for me) if that helps. |
@josegonzalez for the shutdown + redis issue see #2871 |
just a quick update to say I found a way to extract an I looks like this solution only works on Java 8 though. |
@colinsurprenant I'm OK with this - Java 7 is EOL anyway, so I think it's reasonable to expect that Java 8 should become more common very soon. |
<3 you so much for finding this solution |
Yay java 8! Good work @colinsurprenant :) |
landed the jruby-stdin-channel gem for it. just need to insert that into the stdin input and see how that behave :P |
inserted in the stdin input in logstash-plugins/logstash-input-stdin#3 |
please follow this in logstash-plugins/logstash-input-stdin#3 |
For whatever reason, I can't figure out how to close stdin in JRuby and interrupt any currently-blocked reads on stdin.
This confuses users and is generally annoying.
The symptom is that ^C should terminate logstash cleanly, but stdin never really stops so the pipeline stays up until you close stdin as a user (via ^D)
(related: #1767)
The text was updated successfully, but these errors were encountered: