Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Convert Exception during converge to a failed action (elastic#13969)
Certain errors during pipeline converge will emit an IllegalStateException - for example attempting to reference an environment variable that does not exist. Attempting to add a java exception to the converge result would result in an uncaught exception in a pipeline thread leading to an unclean shutdown. This had the effect of,prior to this commit, Logstash behaviour varying depending on the class of error that caused a pipeline not to start - an invalid pipeline configuration would still enable logstash to start other pipelines in a multiple pipeline configuration, or automatic reloading enabling changes to the configuration to allow the pipeline to start(in multi- and single pipeline configurations). However, a missing environment variable would cause Logstash to crash hard no matter what. This was discovered when updating to jruby-9.3.3.0, when new clean up code joining existing threads to perform a graceful shutdown was stuck indefinitely, due to the webserver shutdown code not being called, due to the unclean shutdown.
- Loading branch information