You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datafusion.apache.org by gi...@apache.org on 2026/10/14 01:54:23 UTC
(datafusion-comet) branch asf-site updated: Publish built docs triggered by 5d78898c7380a68498c2ddf07f401afbcde765ae
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 523e15dad0 Publish built docs triggered by 5d78898c7380a68498c2ddf07f401afbcde765ae
523e15dad0 is described below
commit 523e15dad08e28e41e2a0aa7a9768b29818fe731
Author: github-actions[bot] <gi...@users.noreply.github.com>
AuthorDate: Wed Oct 14 01:54:17 2026 +0000
Publish built docs triggered by 5d78898c7380a68498c2ddf07f401afbcde765ae
---
...ermaid-09341aca03757d9d3637a2eaff73472d472d0673.svg | 2 +-
.../expressions/spark-3.4/aggregate.md.txt | 14 ++++++++++++++
.../expressions/spark-3.5/aggregate.md.txt | 14 ++++++++++++++
.../expressions/spark-4.0/aggregate.md.txt | 14 ++++++++++++++
.../expressions/spark-4.1/aggregate.md.txt | 14 ++++++++++++++
.../expressions/spark-4.2/aggregate.md.txt | 14 ++++++++++++++
.../user-guide/latest/compatibility/operators.md.txt | 8 +++++---
searchindex.js | 2 +-
.../compatibility/expressions/spark-3.4/aggregate.html | 18 ++++++++++++++++++
.../compatibility/expressions/spark-3.5/aggregate.html | 18 ++++++++++++++++++
.../compatibility/expressions/spark-4.0/aggregate.html | 18 ++++++++++++++++++
.../compatibility/expressions/spark-4.1/aggregate.html | 18 ++++++++++++++++++
.../compatibility/expressions/spark-4.2/aggregate.html | 18 ++++++++++++++++++
user-guide/latest/compatibility/operators.html | 8 +++++---
14 files changed, 172 insertions(+), 8 deletions(-)
diff --git a/_images/mermaid-09341aca03757d9d3637a2eaff73472d472d0673.svg b/_images/mermaid-09341aca03757d9d3637a2eaff73472d472d0673.svg
index 347348a66e..b2530fb6c2 100644
--- a/_images/mermaid-09341aca03757d9d3637a2eaff73472d472d0673.svg
+++ b/_images/mermaid-09341aca03757d9d3637a2eaff73472d472d0673.svg
@@ -1 +1 @@
-<svg id="my-svg" width="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="flowchart" style="max-width: 511.73px; background-color: transparent;" viewBox="0 0 511.7299499511719 1014" role="graphics-document document" aria-roledescription="flowchart-v2"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-sv [...]
\ No newline at end of file
+<svg id="my-svg" width="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="flowchart" style="max-width: 511.73px; background-color: transparent;" viewBox="0 0 511.7299499511719 1014" role="graphics-document document" aria-roledescription="flowchart-v2"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-sv [...]
\ No newline at end of file
diff --git a/_sources/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.md.txt b/_sources/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.md.txt
index c5fd4a5248..b1cc1b050a 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.md.txt
@@ -61,6 +61,13 @@ The following differences from Spark are always present and do not require any a
- This function is not deterministic. Results may not match Spark.
+## Max
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MaxBy
The following differences from Spark are always present and do not require any additional configuration:
@@ -71,6 +78,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.
+## Min
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MinBy
The following differences from Spark are always present and do not require any additional configuration:
diff --git a/_sources/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.md.txt b/_sources/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.md.txt
index c5fd4a5248..b1cc1b050a 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.md.txt
@@ -61,6 +61,13 @@ The following differences from Spark are always present and do not require any a
- This function is not deterministic. Results may not match Spark.
+## Max
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MaxBy
The following differences from Spark are always present and do not require any additional configuration:
@@ -71,6 +78,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.
+## Min
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MinBy
The following differences from Spark are always present and do not require any additional configuration:
diff --git a/_sources/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.md.txt b/_sources/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.md.txt
index d6df4429a7..c711bfc265 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.md.txt
@@ -94,6 +94,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- Non-literal delimiters are not supported.
- Non-default string collations are not supported.
+## Max
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MaxBy
The following differences from Spark are always present and do not require any additional configuration:
@@ -104,6 +111,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.
+## Min
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MinBy
The following differences from Spark are always present and do not require any additional configuration:
diff --git a/_sources/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.md.txt b/_sources/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.md.txt
index d6df4429a7..c711bfc265 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.md.txt
@@ -94,6 +94,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- Non-literal delimiters are not supported.
- Non-default string collations are not supported.
+## Max
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MaxBy
The following differences from Spark are always present and do not require any additional configuration:
@@ -104,6 +111,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.
+## Min
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MinBy
The following differences from Spark are always present and do not require any additional configuration:
diff --git a/_sources/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.md.txt b/_sources/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.md.txt
index 08948e583d..c66054938a 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.md.txt
@@ -98,6 +98,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- Non-literal delimiters are not supported.
- Non-default string collations are not supported.
+## Max
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MaxBy
The following differences from Spark are always present and do not require any additional configuration:
@@ -108,6 +115,13 @@ The following cases are not supported by Comet and always fall back to Spark, re
- The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.
+## Min
+
+The following cases are not supported by Comet and always fall back to Spark, regardless of any `allowIncompatible` setting:
+
+- Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.
+- A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.
+
## MinBy
The following differences from Spark are always present and do not require any additional configuration:
diff --git a/_sources/user-guide/latest/compatibility/operators.md.txt b/_sources/user-guide/latest/compatibility/operators.md.txt
index afab52bfce..6194f964cd 100644
--- a/_sources/user-guide/latest/compatibility/operators.md.txt
+++ b/_sources/user-guide/latest/compatibility/operators.md.txt
@@ -113,9 +113,11 @@ incorrect result. When any single window expression in a `WindowExec` falls back
(`stddev`, `stddev_pop`, `stddev_samp`, `var_pop`, `var_samp`, `corr`, `covar_pop`, `covar_samp`). These run
natively as plain aggregations but not as window functions
([#4766](https://github.com/apache/datafusion-comet/issues/4766)).
-- `min` / `max` on string, binary, timestamp-without-time-zone, interval, or nested (array / struct) input types,
- and `sum` / `avg` on year-month or day-time interval input types. Windowed aggregates inherit the same input-type
- support as the batch aggregates, so these fall back in both contexts.
+- `min` / `max` on timestamp-without-time-zone, interval, or nested (array / struct) input types, and `sum` /
+ `avg` on year-month or day-time interval input types. Windowed aggregates inherit the same input-type support as
+ the batch aggregates, so these fall back in both contexts.
+- `min` / `max` on string or binary input types. These run natively as plain aggregations but not as window
+ functions.
- `sum` or `avg` on `DECIMAL` with a sliding (non ever-expanding) frame, because the sliding path would wrap on
overflow instead of returning Spark's `NULL`.
- `RANGE` frame with an explicit offset when the `ORDER BY` column is `DATE` or `DECIMAL`
diff --git a/searchindex.js b/searchindex.js
index 642c505176..5f4c005c1b 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"!": [[59, "id1"]], "%": [[57, "id1"]], "&": [[47, "id1"]], "*": [[57, "id2"]], "+": [[57, "id3"]], "-": [[57, "id4"]], "/": [[57, "id5"]], "1. Format Your Code": [[44, "format-your-code"]], "1. Install Comet": [[66, "install-comet"], [78, "install-comet"]], "1. Native Operators (nativeExecs map)": [[30, "native-operators-nativeexecs-map"]], "2. Build and Verify": [[44, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[66, "clone-iceberg-and-apply- [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"!": [[59, "id1"]], "%": [[57, "id1"]], "&": [[47, "id1"]], "*": [[57, "id2"]], "+": [[57, "id3"]], "-": [[57, "id4"]], "/": [[57, "id5"]], "1. Format Your Code": [[44, "format-your-code"]], "1. Install Comet": [[66, "install-comet"], [78, "install-comet"]], "1. Native Operators (nativeExecs map)": [[30, "native-operators-nativeexecs-map"]], "2. Build and Verify": [[44, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[66, "clone-iceberg-and-apply- [...]
\ No newline at end of file
diff --git a/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.html b/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.html
index 642c5c84cf..6bc088e9e8 100644
--- a/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.html
+++ b/user-guide/latest/compatibility/expressions/spark-3.4/aggregate.html
@@ -899,6 +899,14 @@ under the License.
<li><p>This function is not deterministic. Results may not match Spark.</p></li>
</ul>
</section>
+<section id="max">
+<h2>Max<a class="headerlink" href="#max" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="maxby">
<h2>MaxBy<a class="headerlink" href="#maxby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -910,6 +918,14 @@ under the License.
<li><p>The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.</p></li>
</ul>
</section>
+<section id="min">
+<h2>Min<a class="headerlink" href="#min" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="minby">
<h2>MinBy<a class="headerlink" href="#minby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -995,7 +1011,9 @@ under the License.
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#first">First</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#hyperloglogplusplus">HyperLogLogPlusPlus</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#last">Last</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#max">Max</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#maxby">MaxBy</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#min">Min</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#minby">MinBy</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mode">Mode</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#percentile">Percentile</a></li>
diff --git a/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.html b/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.html
index 00496c6318..8b7f2b44d4 100644
--- a/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.html
+++ b/user-guide/latest/compatibility/expressions/spark-3.5/aggregate.html
@@ -899,6 +899,14 @@ under the License.
<li><p>This function is not deterministic. Results may not match Spark.</p></li>
</ul>
</section>
+<section id="max">
+<h2>Max<a class="headerlink" href="#max" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="maxby">
<h2>MaxBy<a class="headerlink" href="#maxby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -910,6 +918,14 @@ under the License.
<li><p>The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.</p></li>
</ul>
</section>
+<section id="min">
+<h2>Min<a class="headerlink" href="#min" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="minby">
<h2>MinBy<a class="headerlink" href="#minby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -995,7 +1011,9 @@ under the License.
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#first">First</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#hyperloglogplusplus">HyperLogLogPlusPlus</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#last">Last</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#max">Max</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#maxby">MaxBy</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#min">Min</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#minby">MinBy</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mode">Mode</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#percentile">Percentile</a></li>
diff --git a/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.html b/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.html
index 22dd58df91..21a42f9bdd 100644
--- a/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.html
+++ b/user-guide/latest/compatibility/expressions/spark-4.0/aggregate.html
@@ -935,6 +935,14 @@ under the License.
<li><p>Non-default string collations are not supported.</p></li>
</ul>
</section>
+<section id="max">
+<h2>Max<a class="headerlink" href="#max" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="maxby">
<h2>MaxBy<a class="headerlink" href="#maxby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -946,6 +954,14 @@ under the License.
<li><p>The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.</p></li>
</ul>
</section>
+<section id="min">
+<h2>Min<a class="headerlink" href="#min" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="minby">
<h2>MinBy<a class="headerlink" href="#minby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -1034,7 +1050,9 @@ under the License.
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#hyperloglogplusplus">HyperLogLogPlusPlus</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#last">Last</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#listagg">ListAgg</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#max">Max</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#maxby">MaxBy</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#min">Min</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#minby">MinBy</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mode">Mode</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#percentile">Percentile</a></li>
diff --git a/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.html b/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.html
index 72cbcc1776..c688e3c57e 100644
--- a/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.html
+++ b/user-guide/latest/compatibility/expressions/spark-4.1/aggregate.html
@@ -935,6 +935,14 @@ under the License.
<li><p>Non-default string collations are not supported.</p></li>
</ul>
</section>
+<section id="max">
+<h2>Max<a class="headerlink" href="#max" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="maxby">
<h2>MaxBy<a class="headerlink" href="#maxby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -946,6 +954,14 @@ under the License.
<li><p>The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.</p></li>
</ul>
</section>
+<section id="min">
+<h2>Min<a class="headerlink" href="#min" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="minby">
<h2>MinBy<a class="headerlink" href="#minby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -1034,7 +1050,9 @@ under the License.
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#hyperloglogplusplus">HyperLogLogPlusPlus</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#last">Last</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#listagg">ListAgg</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#max">Max</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#maxby">MaxBy</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#min">Min</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#minby">MinBy</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mode">Mode</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#percentile">Percentile</a></li>
diff --git a/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.html b/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.html
index 7208063133..61c5e61685 100644
--- a/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.html
+++ b/user-guide/latest/compatibility/expressions/spark-4.2/aggregate.html
@@ -939,6 +939,14 @@ under the License.
<li><p>Non-default string collations are not supported.</p></li>
</ul>
</section>
+<section id="max">
+<h2>Max<a class="headerlink" href="#max" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="maxby">
<h2>MaxBy<a class="headerlink" href="#maxby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -950,6 +958,14 @@ under the License.
<li><p>The value and ordering must both be fixed-length types (boolean, integral, floating-point, decimal, date, or timestamp). A variable-length or nested type such as string, binary, or struct falls back to Spark.</p></li>
</ul>
</section>
+<section id="min">
+<h2>Min<a class="headerlink" href="#min" title="Link to this heading">#</a></h2>
+<p>The following cases are not supported by Comet and always fall back to Spark, regardless of any <code class="docutils literal notranslate"><span class="pre">allowIncompatible</span></code> setting:</p>
+<ul class="simple">
+<li><p>Input of a type other than boolean, integral, floating-point, decimal, date, timestamp, string or binary, such as timestamp without time zone, intervals, arrays and structs.</p></li>
+<li><p>A string with a non-default collation (Spark 4.0+), which Spark orders by its collation while Comet compares raw bytes.</p></li>
+</ul>
+</section>
<section id="minby">
<h2>MinBy<a class="headerlink" href="#minby" title="Link to this heading">#</a></h2>
<p>The following differences from Spark are always present and do not require any additional configuration:</p>
@@ -1038,7 +1054,9 @@ under the License.
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#hyperloglogplusplus">HyperLogLogPlusPlus</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#last">Last</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#listagg">ListAgg</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#max">Max</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#maxby">MaxBy</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#min">Min</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#minby">MinBy</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mode">Mode</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#percentile">Percentile</a></li>
diff --git a/user-guide/latest/compatibility/operators.html b/user-guide/latest/compatibility/operators.html
index 62ced1be73..83cac0677f 100644
--- a/user-guide/latest/compatibility/operators.html
+++ b/user-guide/latest/compatibility/operators.html
@@ -932,9 +932,11 @@ supported.</p></li>
(<code class="docutils literal notranslate"><span class="pre">stddev</span></code>, <code class="docutils literal notranslate"><span class="pre">stddev_pop</span></code>, <code class="docutils literal notranslate"><span class="pre">stddev_samp</span></code>, <code class="docutils literal notranslate"><span class="pre">var_pop</span></code>, <code class="docutils literal notranslate"><span class="pre">var_samp</span></code>, <code class="docutils literal notranslate"><span class="pre">cor [...]
natively as plain aggregations but not as window functions
(<a class="reference external" href="https://github.com/apache/datafusion-comet/issues/4766">#4766</a>).</p></li>
-<li><p><code class="docutils literal notranslate"><span class="pre">min</span></code> / <code class="docutils literal notranslate"><span class="pre">max</span></code> on string, binary, timestamp-without-time-zone, interval, or nested (array / struct) input types,
-and <code class="docutils literal notranslate"><span class="pre">sum</span></code> / <code class="docutils literal notranslate"><span class="pre">avg</span></code> on year-month or day-time interval input types. Windowed aggregates inherit the same input-type
-support as the batch aggregates, so these fall back in both contexts.</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">min</span></code> / <code class="docutils literal notranslate"><span class="pre">max</span></code> on timestamp-without-time-zone, interval, or nested (array / struct) input types, and <code class="docutils literal notranslate"><span class="pre">sum</span></code> /
+<code class="docutils literal notranslate"><span class="pre">avg</span></code> on year-month or day-time interval input types. Windowed aggregates inherit the same input-type support as
+the batch aggregates, so these fall back in both contexts.</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">min</span></code> / <code class="docutils literal notranslate"><span class="pre">max</span></code> on string or binary input types. These run natively as plain aggregations but not as window
+functions.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">sum</span></code> or <code class="docutils literal notranslate"><span class="pre">avg</span></code> on <code class="docutils literal notranslate"><span class="pre">DECIMAL</span></code> with a sliding (non ever-expanding) frame, because the sliding path would wrap on
overflow instead of returning Spark’s <code class="docutils literal notranslate"><span class="pre">NULL</span></code>.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">RANGE</span></code> frame with an explicit offset when the <code class="docutils literal notranslate"><span class="pre">ORDER</span> <span class="pre">BY</span></code> column is <code class="docutils literal notranslate"><span class="pre">DATE</span></code> or <code class="docutils literal notranslate"><span class="pre">DECIMAL</span></code>
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datafusion.apache.org
For additional commands, e-mail: commits-help@datafusion.apache.org