Merge pull request #566 from metamx/fix-cached-segments-order

preserve segment order when pulling from cache
This commit is contained in:
fjy 2014-05-28 12:12:13 -06:00
commit da4972716a

View File

@ -183,7 +183,8 @@ public class CachingClusteredClient<T> implements QueryRunner<T>
}
if (queryCacheKey != null) {
Map<Pair<ServerSelector, SegmentDescriptor>, Cache.NamedKey> cacheKeys = Maps.newHashMap();
// cache keys must preserve segment ordering, in order for shards to always be combined in the same order
Map<Pair<ServerSelector, SegmentDescriptor>, Cache.NamedKey> cacheKeys = Maps.newLinkedHashMap();
for (Pair<ServerSelector, SegmentDescriptor> segment : segments) {
final Cache.NamedKey segmentCacheKey = CacheUtil.computeSegmentCacheKey(
segment.lhs.getSegment().getIdentifier(),