@Override public PercolateShardResponse doPercolate( PercolateShardRequest request, PercolateContext context) { long count = 0; Engine.Searcher percolatorSearcher = context.indexShard().acquireSearcher("percolate"); try { Count countCollector = count(logger, context); queryBasedPercolating(percolatorSearcher, context, countCollector); count = countCollector.counter(); } catch (Throwable e) { logger.warn("failed to execute", e); } finally { percolatorSearcher.close(); } return new PercolateShardResponse(count, context, request.index(), request.shardId()); }