{"action":"created","issue":{"url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/issues/321","repository_url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch","labels_url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/issues/321/labels{/name}","comments_url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/issues/321/comments","events_url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/issues/321/events","html_url":"https://github.com/logstash-plugins/logstash-output-elasticsearch/issues/321","id":120218004,"number":321,"title":"Retry logic does the wrong thing","user":{"login":"andrewvc","id":131427,"avatar_url":"https://avatars.githubusercontent.com/u/131427?v=3","gravatar_id":"","url":"https://api.github.com/users/andrewvc","html_url":"https://github.com/andrewvc","followers_url":"https://api.github.com/users/andrewvc/followers","following_url":"https://api.github.com/users/andrewvc/following{/other_user}","gists_url":"https://api.github.com/users/andrewvc/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewvc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewvc/subscriptions","organizations_url":"https://api.github.com/users/andrewvc/orgs","repos_url":"https://api.github.com/users/andrewvc/repos","events_url":"https://api.github.com/users/andrewvc/events{/privacy}","received_events_url":"https://api.github.com/users/andrewvc/received_events","type":"User","site_admin":false},"labels":[{"id":139633104,"url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/labels/bug","name":"bug","color":"e11d21","default":true},{"id":139633106,"url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/labels/enhancement","name":"enhancement","color":"009800","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2015-12-03T16:45:22Z","updated_at":"2016-12-20T21:13:18Z","closed_at":null,"body":"Currently our retry logic is the following:\n1. Retry [409, 429, 503] up `max_attempts` times per batch.\n2. Retry network errors infinitely.\n\nAs @gingerwizard pointed out this all makes no sense. We would expect 429/503 to retry infinitely. These both mean that Elasticsearch is just too busy to do anything useful.\n\nFor the 409 use case there's no reason to retry on the ES output. We should let Elasticsearch handle that with `retry_on_conflict`.\n\nThe great thing about this is we'll need _less_ code in this plugin for better performance / functionality!\n"},"comment":{"url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/issues/comments/268361224","html_url":"https://github.com/logstash-plugins/logstash-output-elasticsearch/issues/321#issuecomment-268361224","issue_url":"https://api.github.com/repos/logstash-plugins/logstash-output-elasticsearch/issues/321","id":268361224,"user":{"login":"jordansissel","id":131818,"avatar_url":"https://avatars.githubusercontent.com/u/131818?v=3","gravatar_id":"","url":"https://api.github.com/users/jordansissel","html_url":"https://github.com/jordansissel","followers_url":"https://api.github.com/users/jordansissel/followers","following_url":"https://api.github.com/users/jordansissel/following{/other_user}","gists_url":"https://api.github.com/users/jordansissel/gists{/gist_id}","starred_url":"https://api.github.com/users/jordansissel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jordansissel/subscriptions","organizations_url":"https://api.github.com/users/jordansissel/orgs","repos_url":"https://api.github.com/users/jordansissel/repos","events_url":"https://api.github.com/users/jordansissel/events{/privacy}","received_events_url":"https://api.github.com/users/jordansissel/received_events","type":"User","site_admin":false},"created_at":"2016-12-20T21:13:18Z","updated_at":"2016-12-20T21:13:18Z","body":"> Note that I didn't say \"by default\", \r\n\r\nI'm not going to argue semantics with you. The last sentence in my comment indicated that we are working on such features already to allow configuration of this behavior, copied below for emphasis:\r\n\r\n> We have other features coming soon that will allow you to configure the behavior on error."}}
{"actor":{"display_login":"jordansissel"}}