From 279b1b28d3443ba65dcb429ef5954001a43b1826 Mon Sep 17 00:00:00 2001 From: Pascal Seitz Date: Thu, 27 Oct 2022 16:19:59 +0800 Subject: [PATCH] switch to fx hashmap --- src/aggregation/agg_result.rs | 4 +--- src/aggregation/intermediate_agg_result.rs | 11 +++++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/aggregation/agg_result.rs b/src/aggregation/agg_result.rs index 93e2c9302..3b80c93dc 100644 --- a/src/aggregation/agg_result.rs +++ b/src/aggregation/agg_result.rs @@ -4,8 +4,6 @@ //! intermediate average results, which is the sum and the number of values. The actual average is //! calculated on the step from intermediate to final aggregation result tree. -use std::collections::HashMap; - use rustc_hash::FxHashMap; use serde::{Deserialize, Serialize}; @@ -18,7 +16,7 @@ use crate::TantivyError; #[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] /// The final aggegation result. -pub struct AggregationResults(pub HashMap); +pub struct AggregationResults(pub FxHashMap); impl AggregationResults { pub(crate) fn get_value_from_aggregation( diff --git a/src/aggregation/intermediate_agg_result.rs b/src/aggregation/intermediate_agg_result.rs index 8462d6c9e..6f0dea8cf 100644 --- a/src/aggregation/intermediate_agg_result.rs +++ b/src/aggregation/intermediate_agg_result.rs @@ -3,7 +3,6 @@ //! indices. use std::cmp::Ordering; -use std::collections::HashMap; use itertools::Itertools; use rustc_hash::FxHashMap; @@ -51,7 +50,7 @@ impl IntermediateAggregationResults { // Important assumption: // When the tree contains buckets/metric, we expect it to have all buckets/metrics from the // request - let mut results: HashMap = HashMap::new(); + let mut results: FxHashMap = FxHashMap::default(); if let Some(buckets) = self.buckets { convert_and_add_final_buckets_to_result(&mut results, buckets, &req.buckets)? @@ -132,7 +131,7 @@ impl IntermediateAggregationResults { } fn convert_and_add_final_metrics_to_result( - results: &mut HashMap, + results: &mut FxHashMap, metrics: VecWithNames, ) { results.extend( @@ -143,7 +142,7 @@ fn convert_and_add_final_metrics_to_result( } fn add_empty_final_metrics_to_result( - results: &mut HashMap, + results: &mut FxHashMap, req_metrics: &VecWithNames, ) -> crate::Result<()> { results.extend(req_metrics.iter().map(|(key, req)| { @@ -157,7 +156,7 @@ fn add_empty_final_metrics_to_result( } fn add_empty_final_buckets_to_result( - results: &mut HashMap, + results: &mut FxHashMap, req_buckets: &VecWithNames, ) -> crate::Result<()> { let requested_buckets = req_buckets.iter(); @@ -169,7 +168,7 @@ fn add_empty_final_buckets_to_result( } fn convert_and_add_final_buckets_to_result( - results: &mut HashMap, + results: &mut FxHashMap, buckets: VecWithNames, req_buckets: &VecWithNames, ) -> crate::Result<()> {