| 279 | } |
| 280 | |
| 281 | fn try_pushdown_sort( |
| 282 | &self, |
| 283 | order: &[PhysicalSortExpr], |
| 284 | ) -> Result<SortOrderPushdownResult<Arc<dyn ExecutionPlan>>> { |
| 285 | // CoalesceBatchesExec is transparent for sort ordering - it preserves order |
| 286 | // Delegate to the child and wrap with a new CoalesceBatchesExec |
| 287 | self.input.try_pushdown_sort(order)?.try_map(|new_input| { |
| 288 | Ok(Arc::new(Self::new(new_input, self.capacity)) as Arc<dyn ExecutionPlan>) |
| 289 | }) |
| 290 | } |
| 291 | } |
| 292 | |
| 293 | /// Represents anything that occupies a capacity in a [MemoryBufferedStream]. |