@@ -102,6 +102,31 @@ index codec best compression. (#112665)
102102
103103{es-pull}112857[#112857]
104104
105+ [discrete]
106+ [[esql_introduce_per_agg_filter]]
107+ === ESQL: Introduce per agg filter
108+ Add support for aggregation scoped filters that work dynamically on the
109+ data in each group.
110+
111+ [source,esql]
112+ ----
113+ | STATS success = COUNT(*) WHERE 200 <= code AND code < 300,
114+ redirect = COUNT(*) WHERE 300 <= code AND code < 400,
115+ client_err = COUNT(*) WHERE 400 <= code AND code < 500,
116+ server_err = COUNT(*) WHERE 500 <= code AND code < 600,
117+ total_count = COUNT(*)
118+ ----
119+
120+ Implementation wise, the base AggregateFunction has been extended to
121+ allow a filter to be passed on. This is required to incorporate the
122+ filter as part of the aggregate equality/identity which would fail with
123+ the filter as an external component.
124+ As part of the process, the serialization for the existing aggregations
125+ had to be fixed so AggregateFunction implementations so that it
126+ delegates to their parent first.
127+
128+ {es-pull}113735[#113735]
129+
105130// end::notable-highlights[]
106131
107132
@@ -131,3 +156,44 @@ field is first combined into a single geometry before performing the predicate c
131156
132157{es-pull}112063[#112063]
133158
159+ [discrete]
160+ [[enhance_sort_push_down_to_lucene_to_cover_references_to_fields_st_distance_function]]
161+ === Enhance SORT push-down to Lucene to cover references to fields and ST_DISTANCE function
162+ The most used and likely most valuable geospatial search query in Elasticsearch is the sorted proximity search,
163+ finding items within a certain distance of a point of interest and sorting the results by distance.
164+ This has been possible in ES|QL since 8.15.0, but the sorting was done in-memory, not pushed down to Lucene.
165+ Now the sorting is pushed down to Lucene, which results in a significant performance improvement.
166+
167+ Queries that perform both filtering and sorting on distance are supported. For example:
168+
169+ [source,esql]
170+ ----
171+ FROM test
172+ | EVAL distance = ST_DISTANCE(location, TO_GEOPOINT("POINT(37.7749, -122.4194)"))
173+ | WHERE distance < 1000000
174+ | SORT distance ASC, name DESC
175+ | LIMIT 10
176+ ----
177+
178+ In addition, the support for sorting on EVAL expressions has been extended to cover references to fields:
179+
180+ [source,esql]
181+ ----
182+ FROM test
183+ | EVAL ref = field
184+ | SORT ref ASC
185+ | LIMIT 10
186+ ----
187+
188+ {es-pull}112938[#112938]
189+
190+ [discrete]
191+ [[cross_cluster_search_telemetry]]
192+ === Cross-cluster search telemetry
193+ The cross-cluster search telemetry is collected when cross-cluster searches
194+ are performed, and is returned as "ccs" field in `_cluster/stats` output.
195+ It also add a new parameter `include_remotes=true` to the `_cluster/stats` API
196+ which will collect data from connected remote clusters.
197+
198+ {es-pull}113825[#113825]
199+
0 commit comments