/** * A request is cacheable if it does not refer to partial data. * * @return whether request can be cached */ protected boolean isCacheable() { SimplifiedIntervalList missingIntervals = getPartialIntervalsWithDefault(getResponseContext()); SimplifiedIntervalList volatileIntervals = getVolatileIntervalsWithDefault(getResponseContext()); return missingIntervals.isEmpty() && volatileIntervals.isEmpty(); } }
@Override public void processResponse(JsonNode json, DruidAggregationQuery<?> druidQuery, LoggingContext metadata) { if (CACHE_PARTIAL_DATA.isOn() || isCacheable()) { String valueString = null; try {
nextResponse = new CacheV2ResponseProcessor( response, cacheKey,