Just pushed fine grained support for filter caching:
issue explains a bit what its all about, the good news is that some filters
will be much faster now (ones that don't make a lot of sense to cache, like
geo_distance, as they rarely run with the same parameters). Note that when
caching a filter, a price is "paid" on top of the regular filter execution
at the expense of much faster execution when the same filter (with the same
parameters) is used.
In any case, the power is at your hands, each filter can be cacheable or not
using a simple parameter in the Query DSL. For example, if geo_distance
filter is used with the same lat/lon and distance several times, it makes
sense to cache.