Skip to content

undefined method `status' for nil:NilClass #428

@portante

Description

@portante

With v1.0.18, we continually see the following in OpenShift aggregated logging:

2017-05-02 04:40:22 +0000 [warn]: temporarily failed to flush the buffer. next_retry=2017-05-02 04:40:23 +0000 error_class="NoMethodError" error="undefined method `status' for nil:NilClass" plugin_id="object:13e2424"
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/elasticsearch-transport-1.0.18/lib/elasticsearch/transport/transport/base.rb:265:in `rescue in perform_request'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/elasticsearch-transport-1.0.18/lib/elasticsearch/transport/transport/base.rb:247:in `perform_request'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/elasticsearch-transport-1.0.18/lib/elasticsearch/transport/transport/http/faraday.rb:20:in `perform_request'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/elasticsearch-transport-1.0.18/lib/elasticsearch/transport/client.rb:128:in `perform_request'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/elasticsearch-api-1.0.18/lib/elasticsearch/api/actions/bulk.rb:90:in `bulk'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluent-plugin-elasticsearch-1.9.1/lib/fluent/plugin/out_elasticsearch_dynamic.rb:201:in `send_bulk'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluent-plugin-elasticsearch-1.9.1/lib/fluent/plugin/out_elasticsearch_dynamic.rb:193:in `block in write_objects'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluent-plugin-elasticsearch-1.9.1/lib/fluent/plugin/out_elasticsearch_dynamic.rb:192:in `each'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluent-plugin-elasticsearch-1.9.1/lib/fluent/plugin/out_elasticsearch_dynamic.rb:192:in `write_objects'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluentd-0.12.29/lib/fluent/output.rb:480:in `write'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluentd-0.12.29/lib/fluent/buffer.rb:354:in `write_chunk'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluentd-0.12.29/lib/fluent/buffer.rb:333:in `pop'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluentd-0.12.29/lib/fluent/output.rb:338:in `try_flush'
  2017-05-02 04:40:22 +0000 [warn]: /usr/share/gems/gems/fluentd-0.12.29/lib/fluent/output.rb:149:in `run'
2017-05-02 04:40:23 +0000 [warn]: retry succeeded. plugin_id="object:13e2424"

Looks like the code at https://github.com/elastic/elasticsearch-ruby/blob/v1.0.18/elasticsearch-transport/lib/elasticsearch/transport/transport/base.rb#L265 should check that the response object is not nil?

This looks to be the case in the latest code in master as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions