I've developed a tiny web UI for the Elasticsearch HTTP REST API that displays a table of indices, and then lets you delete indices. I find it useful for testing. I call it "Lackygun".
I originally wrote Lackygun to work with Elasticsearch 1.x. I've just dusted it off for Elastic 5.0, and... it didn't work.
Elasticsearch now rejects the Ajax request with error 400 (Bad Request) for the following reason:
request [/stats/docs,store/] contains unrecognized parameter: 
Sure enough, here's the request URL:
I didn't explicitly add that underscore (_) parameter. jQuery did.
I'm using that request with the DataTables (1.10.8) jQuery plug-in.
To suppress that parameter, I added the following property to the DataTable
That fixed it.
Why am I bothering reporting this?
- To ask the Elasticsearch developers: did you specifically decide to reject URLs with an underscore parameter, or did you simply make a blanket decision to reject all parameters not defined by the REST API?
- In case other users of the REST API hit the same issue.
I understand that this might be very old news indeed, but I couldn't find any related information via Google (specific to the Elasticsearch API rejecting this _ query string parameter).