This is an automated email from the ASF dual-hosted git repository.

github-actions[bot] pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion-comet.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 1d2d4e8bf6 Publish built docs triggered by 
2e907e5602425b7d671ba185b5cd0a6b7b68a490
1d2d4e8bf6 is described below

commit 1d2d4e8bf6f8676fa0f46e5ba3877006a7f0af47
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Fri Jul 24 18:44:08 2026 +0000

    Publish built docs triggered by 2e907e5602425b7d671ba185b5cd0a6b7b68a490
---
 .../expression-audits/agg_funcs.md.txt             |  9 ++++++
 _sources/user-guide/latest/configs.md.txt          |  1 +
 _sources/user-guide/latest/expressions.md.txt      |  4 +--
 contributor-guide/expression-audits/agg_funcs.html | 12 ++++++++
 searchindex.js                                     |  2 +-
 user-guide/latest/configs.html                     | 36 ++++++++++++----------
 user-guide/latest/expressions.html                 |  8 ++---
 7 files changed, 49 insertions(+), 23 deletions(-)

diff --git a/_sources/contributor-guide/expression-audits/agg_funcs.md.txt 
b/_sources/contributor-guide/expression-audits/agg_funcs.md.txt
index 3904cca30c..63f4ca84b7 100644
--- a/_sources/contributor-guide/expression-audits/agg_funcs.md.txt
+++ b/_sources/contributor-guide/expression-audits/agg_funcs.md.txt
@@ -51,6 +51,15 @@
 - Spark 3.5.8 (2026-05-26)
 - Spark 4.0.1 (2026-05-26)
 
+## collect_list
+
+- Spark 3.4.3 (audited 2026-06-24): `CollectList` extends 
`Collect[ArrayBuffer[Any]]`, returns `ArrayType(child.dataType, containsNull = 
false)`, ignores NULL inputs in `update()` (Hive-compatible semantics), and 
yields an empty array as `defaultResult`. `nullable = false`. No 
`checkInputDataTypes` override, so any input type is accepted (including 
STRUCT, ARRAY, MAP). Registered as both `collect_list` and `array_agg` aliases 
in `FunctionRegistry`.
+- Spark 3.5.8 (audited 2026-06-24): identical to 3.4.3.
+- Spark 4.0.1 (audited 2026-06-24): only structural change is adding `with 
UnaryLike[Expression]` to the case class (no behavior change).
+- Spark 4.1.1 (audited 2026-06-24): identical to 4.0.1.
+- Comet implementation: native side delegates to 
`datafusion_spark::function::aggregate::collect::SparkCollectList`, which wraps 
`ArrayAggAccumulator` with `ignore_nulls = true` and converts a final NULL 
accumulator state to an empty array (matching Spark's `defaultResult`). The 
native return type is `List(Field, containsNull = true)`, while Spark uses 
`containsNull = false`. Because nulls are filtered before insertion, no nulls 
actually appear in the array, so this is a schema-shape dif [...]
+- Spark 4.2 (preview): `CollectList` and `CollectSet` gain an `ignoreNulls` 
field (default `true`); `RESPECT NULLS` sets it to `false` and keeps null 
elements. The native path always drops nulls, so `CometCollectShim` reads the 
field per Spark version (always `true` on 3.4-4.1) and `CometCollectList` / 
`CometCollectSet` report `Unsupported` when it is `false`, falling back to 
Spark.
+
 ## median
 
 - Spark 3.4.3 (audited 2026-06-24): `Median(child)` is a 
`RuntimeReplaceableAggregate` with `replacement = Percentile(child, 
Literal(0.5))`. Catalyst rewrites `median(x)` to `percentile(x, 0.5)` before 
Comet sees the plan, so it is served by `CometPercentile`.
diff --git a/_sources/user-guide/latest/configs.md.txt 
b/_sources/user-guide/latest/configs.md.txt
index a84b726a81..8926f2a8ee 100644
--- a/_sources/user-guide/latest/configs.md.txt
+++ b/_sources/user-guide/latest/configs.md.txt
@@ -467,6 +467,7 @@ These settings can be used to determine which parts of the 
plan are accelerated
 | `spark.comet.expression.BitOrAgg.enabled` | Enable Comet acceleration for 
`BitOrAgg` | true |
 | `spark.comet.expression.BitXorAgg.enabled` | Enable Comet acceleration for 
`BitXorAgg` | true |
 | `spark.comet.expression.BloomFilterAggregate.enabled` | Enable Comet 
acceleration for `BloomFilterAggregate` | true |
+| `spark.comet.expression.CollectList.enabled` | Enable Comet acceleration for 
`CollectList` | true |
 | `spark.comet.expression.CollectSet.enabled` | Enable Comet acceleration for 
`CollectSet` | true |
 | `spark.comet.expression.Corr.enabled` | Enable Comet acceleration for `Corr` 
| true |
 | `spark.comet.expression.Count.enabled` | Enable Comet acceleration for 
`Count` | true |
diff --git a/_sources/user-guide/latest/expressions.md.txt 
b/_sources/user-guide/latest/expressions.md.txt
index 6323083cbc..efbd33ba1c 100644
--- a/_sources/user-guide/latest/expressions.md.txt
+++ b/_sources/user-guide/latest/expressions.md.txt
@@ -72,14 +72,14 @@ The tables below list every Spark built-in expression with 
its current status.
 | `any_value` | ✅ |  |
 | `approx_count_distinct` | ✅ |  |
 | `approx_percentile` | ✅ | Byte, short, int, long, float, and double input; 
other input types fall back to Spark |
-| `array_agg` | 🔜 | Array aggregate (related to `collect_list`, 
[#2524](https://github.com/apache/datafusion-comet/issues/2524)) |
+| `array_agg` | ✅ | Alias for `collect_list` |
 | `avg` | ✅ | Interval types fall back |
 | `bit_and` | ✅ |  |
 | `bit_or` | ✅ |  |
 | `bit_xor` | ✅ |  |
 | `bool_and` | ✅ |  |
 | `bool_or` | ✅ |  |
-| `collect_list` | 🔜 | 
[#2524](https://github.com/apache/datafusion-comet/issues/2524) |
+| `collect_list` | ✅ |  |
 | `collect_set` | ✅ |  |
 | `corr` | ✅ |  |
 | `count` | ✅ |  |
diff --git a/contributor-guide/expression-audits/agg_funcs.html 
b/contributor-guide/expression-audits/agg_funcs.html
index c26cd11d28..006cce6117 100644
--- a/contributor-guide/expression-audits/agg_funcs.html
+++ b/contributor-guide/expression-audits/agg_funcs.html
@@ -592,6 +592,17 @@ under the License.
 <li><p>Spark 4.0.1 (2026-05-26)</p></li>
 </ul>
 </section>
+<section id="collect-list">
+<h2>collect_list<a class="headerlink" href="#collect-list" title="Link to this 
heading">#</a></h2>
+<ul class="simple">
+<li><p>Spark 3.4.3 (audited 2026-06-24): <code class="docutils literal 
notranslate"><span class="pre">CollectList</span></code> extends <code 
class="docutils literal notranslate"><span 
class="pre">Collect[ArrayBuffer[Any]]</span></code>, returns <code 
class="docutils literal notranslate"><span 
class="pre">ArrayType(child.dataType,</span> <span 
class="pre">containsNull</span> <span class="pre">=</span> <span 
class="pre">false)</span></code>, ignores NULL inputs in <code class="docutils 
li [...]
+<li><p>Spark 3.5.8 (audited 2026-06-24): identical to 3.4.3.</p></li>
+<li><p>Spark 4.0.1 (audited 2026-06-24): only structural change is adding 
<code class="docutils literal notranslate"><span class="pre">with</span> <span 
class="pre">UnaryLike[Expression]</span></code> to the case class (no behavior 
change).</p></li>
+<li><p>Spark 4.1.1 (audited 2026-06-24): identical to 4.0.1.</p></li>
+<li><p>Comet implementation: native side delegates to <code class="docutils 
literal notranslate"><span 
class="pre">datafusion_spark::function::aggregate::collect::SparkCollectList</span></code>,
 which wraps <code class="docutils literal notranslate"><span 
class="pre">ArrayAggAccumulator</span></code> with <code class="docutils 
literal notranslate"><span class="pre">ignore_nulls</span> <span 
class="pre">=</span> <span class="pre">true</span></code> and converts a final 
NULL accumulator st [...]
+<li><p>Spark 4.2 (preview): <code class="docutils literal notranslate"><span 
class="pre">CollectList</span></code> and <code class="docutils literal 
notranslate"><span class="pre">CollectSet</span></code> gain an <code 
class="docutils literal notranslate"><span 
class="pre">ignoreNulls</span></code> field (default <code class="docutils 
literal notranslate"><span class="pre">true</span></code>); <code 
class="docutils literal notranslate"><span class="pre">RESPECT</span> <span 
class="pre">N [...]
+</ul>
+</section>
 <section id="median">
 <h2>median<a class="headerlink" href="#median" title="Link to this 
heading">#</a></h2>
 <ul class="simple">
@@ -665,6 +676,7 @@ under the License.
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#approx-percentile">approx_percentile</a></li>
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#avg">avg</a></li>
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#bit-and">bit_and</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#collect-list">collect_list</a></li>
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#median">median</a></li>
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#percentile">percentile</a></li>
 </ul>
diff --git a/searchindex.js b/searchindex.js
index 355af01c27..1758e6d69d 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"!": [[53, "id1"]], "%": [[51, "id1"]], "&": 
[[41, "id1"]], "*": [[51, "id2"]], "+": [[51, "id3"]], "-": [[51, "id4"]], "/": 
[[51, "id5"]], "1. Format Your Code": [[38, "format-your-code"]], "1. Install 
Comet": [[59, "install-comet"], [69, "install-comet"]], "1. Native Operators 
(nativeExecs map)": [[26, "native-operators-nativeexecs-map"]], "2. Build and 
Verify": [[38, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[59, 
"clone-iceberg-and-apply- [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"!": [[53, "id1"]], "%": [[51, "id1"]], "&": 
[[41, "id1"]], "*": [[51, "id2"]], "+": [[51, "id3"]], "-": [[51, "id4"]], "/": 
[[51, "id5"]], "1. Format Your Code": [[38, "format-your-code"]], "1. Install 
Comet": [[59, "install-comet"], [69, "install-comet"]], "1. Native Operators 
(nativeExecs map)": [[26, "native-operators-nativeexecs-map"]], "2. Build and 
Verify": [[38, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[59, 
"clone-iceberg-and-apply- [...]
\ No newline at end of file
diff --git a/user-guide/latest/configs.html b/user-guide/latest/configs.html
index 4d4c362cdf..99479ac007 100644
--- a/user-guide/latest/configs.html
+++ b/user-guide/latest/configs.html
@@ -2345,67 +2345,71 @@ under the License.
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">BloomFilterAggregate</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CollectSet.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CollectList.enabled</span></code></p></td>
+<td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">CollectList</span></code></p></td>
+<td><p>true</p></td>
+</tr>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CollectSet.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">CollectSet</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Corr.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Corr.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Corr</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Count.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Count.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Count</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CovPopulation.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CovPopulation.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">CovPopulation</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CovSample.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.CovSample.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">CovSample</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.First.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.First.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">First</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.HyperLogLogPlusPlus.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.HyperLogLogPlusPlus.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">HyperLogLogPlusPlus</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Last.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Last.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Last</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Max.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Max.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Max</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Min.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Min.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Min</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Percentile.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Percentile.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Percentile</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.StddevPop.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.StddevPop.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">StddevPop</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.StddevSamp.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.StddevSamp.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">StddevSamp</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Sum.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.Sum.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">Sum</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.VariancePop.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.VariancePop.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">VariancePop</span></code></p></td>
 <td><p>true</p></td>
 </tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.VarianceSamp.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">spark.comet.expression.VarianceSamp.enabled</span></code></p></td>
 <td><p>Enable Comet acceleration for <code class="docutils literal 
notranslate"><span class="pre">VarianceSamp</span></code></p></td>
 <td><p>true</p></td>
 </tr>
diff --git a/user-guide/latest/expressions.html 
b/user-guide/latest/expressions.html
index 72c124d75e..930424337e 100644
--- a/user-guide/latest/expressions.html
+++ b/user-guide/latest/expressions.html
@@ -819,8 +819,8 @@ expressions. The following function families are 
<strong>not currently planned</
 <td><p>Byte, short, int, long, float, and double input; other input types fall 
back to Spark</p></td>
 </tr>
 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">array_agg</span></code></p></td>
-<td><p>🔜</p></td>
-<td><p>Array aggregate (related to <code class="docutils literal 
notranslate"><span class="pre">collect_list</span></code>, <a class="reference 
external" 
href="https://github.com/apache/datafusion-comet/issues/2524";>#2524</a>)</p></td>
+<td><p>✅</p></td>
+<td><p>Alias for <code class="docutils literal notranslate"><span 
class="pre">collect_list</span></code></p></td>
 </tr>
 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">avg</span></code></p></td>
 <td><p>✅</p></td>
@@ -847,8 +847,8 @@ expressions. The following function families are 
<strong>not currently planned</
 <td><p></p></td>
 </tr>
 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span 
class="pre">collect_list</span></code></p></td>
-<td><p>🔜</p></td>
-<td><p><a class="reference external" 
href="https://github.com/apache/datafusion-comet/issues/2524";>#2524</a></p></td>
+<td><p>✅</p></td>
+<td><p></p></td>
 </tr>
 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span 
class="pre">collect_set</span></code></p></td>
 <td><p>✅</p></td>


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to