It throws off the Elasticsearch parser and it starts ignoring the rest of the query. By the way, these _cache statement are useless, because they just ensure default settings anyway. And as @Damien said, entire request would be much better as filtered query: