Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Item status code not checked by Elasticsearch Bulk API client #192
Summary: The Elasticsearch Bulk API client in libbeat does not check the status codes returned in the items array. This could result in data loss if an insert fails because the Beat will think the insert was property acknowledged and will not retry the delivery.
Background: The Elasticsearch Bulk API returns an "items" array containing one entry for every document that was indexed. There is a status code for each element. There is also an HTTP status code for the whole bulk API request. The HTTP response code can be 201 even though an item failed to insert.
Example response containing a failure: