diff --git a/src/query/src/part_sort.rs b/src/query/src/part_sort.rs
index d44304b415..f1574ec334 100644
--- a/src/query/src/part_sort.rs
+++ b/src/query/src/part_sort.rs
@@ -534,43 +534,69 @@ impl PartSortStream {
}
if topk {
- self.compact_topk_buffer()?;
- self.update_dynamic_filter(sort_data_type)?;
+ let threshold = self.compact_topk_buffer(sort_data_type)?;
+ self.update_dynamic_filter(sort_data_type, threshold)?;
}
Ok(())
}
- fn compact_topk_buffer(&mut self) -> datafusion_common::Result<()> {
+ fn compact_topk_buffer(
+ &mut self,
+ sort_data_type: &DataType,
+ ) -> datafusion_common::Result