My reading of the code is that the message option is ignored if the format option is json. I think you should be using format => "message". The documentation seems to say that too.
delete_by_query does a search for documents that match the query, then it iterates over that list of documents and deletes them. But it does a version check to make sure that the document has not been updated between the query and the delete. If it has been updated then it returns a 409 error and does not delete the document.
If you want to test the output then you can find a build_id that you want to delete from elasticsearch, and replace your jdbc input with
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.