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 e3257697fa Publish built docs triggered by
0fe9b38779e0c5e13b0e351945ed808cd7564a5b
e3257697fa is described below
commit e3257697fadd86911a73d0af5ac9c4d503bdca98
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Wed Aug 5 13:46:35 2026 +0000
Publish built docs triggered by 0fe9b38779e0c5e13b0e351945ed808cd7564a5b
---
_sources/user-guide/latest/configs.md.txt | 2 +
_sources/user-guide/latest/expressions.md.txt | 11 ++--
searchindex.js | 2 +-
user-guide/latest/configs.html | 8 +++
user-guide/latest/expressions.html | 75 ++++++++++++++++-----------
5 files changed, 63 insertions(+), 35 deletions(-)
diff --git a/_sources/user-guide/latest/configs.md.txt
b/_sources/user-guide/latest/configs.md.txt
index add59e103a..6e1441d7ae 100644
--- a/_sources/user-guide/latest/configs.md.txt
+++ b/_sources/user-guide/latest/configs.md.txt
@@ -415,6 +415,8 @@ These settings can be used to determine which parts of the
plan are accelerated
| `spark.comet.expression.Subtract.enabled` | Enable Comet acceleration for
`Subtract` | true |
| `spark.comet.expression.Tan.enabled` | Enable Comet acceleration for `Tan` |
true |
| `spark.comet.expression.Tanh.enabled` | Enable Comet acceleration for `Tanh`
| true |
+| `spark.comet.expression.TimestampAdd.enabled` | Enable Comet acceleration
for `TimestampAdd` | true |
+| `spark.comet.expression.TimestampDiff.enabled` | Enable Comet acceleration
for `TimestampDiff` | true |
| `spark.comet.expression.ToCharacter.enabled` | Enable Comet acceleration for
`ToCharacter` | true |
| `spark.comet.expression.ToDegrees.enabled` | Enable Comet acceleration for
`ToDegrees` | true |
| `spark.comet.expression.ToNumber.enabled` | Enable Comet acceleration for
`ToNumber` | true |
diff --git a/_sources/user-guide/latest/expressions.md.txt
b/_sources/user-guide/latest/expressions.md.txt
index b1aa0e5d39..c5d97bd3a5 100644
--- a/_sources/user-guide/latest/expressions.md.txt
+++ b/_sources/user-guide/latest/expressions.md.txt
@@ -254,15 +254,15 @@ The type-name conversion functions (`bigint`, `binary`,
`boolean`, `date`, `deci
| `current_time` | 🔜 | — | Blocked on Spark 4.1 TIME type support
([#4288](https://github.com/apache/datafusion-comet/issues/4288)) |
| `current_timestamp` | ✅ | — | Constant-folded to a literal before Comet sees
the plan |
| `current_timezone` | ✅ | — | |
-| `date_add` | ✅ | Native | |
-| `date_diff` | ✅ | Native | |
+| `date_add` | ✅ | Native | The 2-argument form is native; the `date_add(UNIT,
n, ts)` form (Spark 3.5+) parses to `timestampadd` and runs through codegen
dispatch |
+| `date_diff` | ✅ | Native | The 2-argument form is native; the
`date_diff(UNIT, start, end)` form (Spark 3.5+) parses to `timestampdiff` and
runs through codegen dispatch |
| `date_format` | ✅ | Hybrid | |
| `date_from_unix_date` | ✅ | Native | |
| `date_part` | ✅ | — | |
| `date_sub` | ✅ | Native | |
| `date_trunc` | ✅ | Hybrid | |
-| `dateadd` | ✅ | Native | |
-| `datediff` | ✅ | Native | |
+| `dateadd` | ✅ | Native | The 2-argument form is native; the `dateadd(UNIT,
n, ts)` form parses to `timestampadd` and runs through codegen dispatch |
+| `datediff` | ✅ | Native | The 2-argument form is native; the `datediff(UNIT,
start, end)` form parses to `timestampdiff` and runs through codegen dispatch |
| `datepart` | ✅ | — | |
| `day` | ✅ | Native | |
| `dayname` | ✅ | — | Abbreviated day name (Spark 4.0+) |
@@ -294,9 +294,12 @@ The type-name conversion functions (`bigint`, `binary`,
`boolean`, `date`, `deci
| `session_window` | 🔜 | — | Batch session-window grouping falls back
(`UpdatingSessionsExec` is not yet native); tracked by
[#4785](https://github.com/apache/datafusion-comet/issues/4785) |
| `time_diff` | 🔜 | — | Spark 4.1 TIME type; tracked by
[#4288](https://github.com/apache/datafusion-comet/issues/4288) |
| `time_trunc` | 🔜 | — | Spark 4.1 TIME type; tracked by
[#4288](https://github.com/apache/datafusion-comet/issues/4288) |
+| `timediff` | ✅ | — | Spark 4.0+ grammar alias that parses to
`timestampdiff`; runs through codegen dispatch |
| `timestamp_micros` | ✅ | Codegen dispatch | |
| `timestamp_millis` | ✅ | Codegen dispatch | |
| `timestamp_seconds` | ✅ | Native | |
+| `timestampadd` | ✅ | — | Reached through the grammar rather than the
function registry; runs through codegen dispatch |
+| `timestampdiff` | ✅ | — | Reached through the grammar rather than the
function registry; runs through codegen dispatch |
| `to_date` | ✅ | — | Rewrites to `Cast` (or `Cast(GetTimestamp)` with a
format) before Comet sees the plan |
| `to_time` | 🔜 | — | Spark 4.1 TIME type; tracked by
[#4288](https://github.com/apache/datafusion-comet/issues/4288) |
| `to_timestamp` | ✅ | — | Rewrites to `Cast` (or `GetTimestamp` with a
format) before Comet sees the plan |
diff --git a/searchindex.js b/searchindex.js
index 339c4cc676..799e266357 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"!": [[54, "id1"]], "%": [[52, "id1"]], "&":
[[42, "id1"]], "*": [[52, "id2"]], "+": [[52, "id3"]], "-": [[52, "id4"]], "/":
[[52, "id5"]], "1. Format Your Code": [[39, "format-your-code"]], "1. Install
Comet": [[60, "install-comet"], [70, "install-comet"]], "1. Native Operators
(nativeExecs map)": [[27, "native-operators-nativeexecs-map"]], "2. Build and
Verify": [[39, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[60,
"clone-iceberg-and-apply- [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"!": [[54, "id1"]], "%": [[52, "id1"]], "&":
[[42, "id1"]], "*": [[52, "id2"]], "+": [[52, "id3"]], "-": [[52, "id4"]], "/":
[[52, "id5"]], "1. Format Your Code": [[39, "format-your-code"]], "1. Install
Comet": [[60, "install-comet"], [70, "install-comet"]], "1. Native Operators
(nativeExecs map)": [[27, "native-operators-nativeexecs-map"]], "2. Build and
Verify": [[39, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[60,
"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 a647ddbdf6..101b04fa82 100644
--- a/user-guide/latest/configs.html
+++ b/user-guide/latest/configs.html
@@ -2156,6 +2156,14 @@ under the License.
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Tanh</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.TimestampAdd.enabled</span></code></p></td>
+<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">TimestampAdd</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.TimestampDiff.enabled</span></code></p></td>
+<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">TimestampDiff</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.ToCharacter.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">ToCharacter</span></code></p></td>
<td><p>true</p></td>
diff --git a/user-guide/latest/expressions.html
b/user-guide/latest/expressions.html
index 2173266640..5f41296ecb 100644
--- a/user-guide/latest/expressions.html
+++ b/user-guide/latest/expressions.html
@@ -1557,12 +1557,12 @@ expressions. The following function families are
<strong>not currently planned</
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">date_add</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
-<td><p></p></td>
+<td><p>The 2-argument form is native; the <code class="docutils literal
notranslate"><span class="pre">date_add(UNIT,</span> <span
class="pre">n,</span> <span class="pre">ts)</span></code> form (Spark 3.5+)
parses to <code class="docutils literal notranslate"><span
class="pre">timestampadd</span></code> and runs through codegen
dispatch</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">date_diff</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
-<td><p></p></td>
+<td><p>The 2-argument form is native; the <code class="docutils literal
notranslate"><span class="pre">date_diff(UNIT,</span> <span
class="pre">start,</span> <span class="pre">end)</span></code> form (Spark
3.5+) parses to <code class="docutils literal notranslate"><span
class="pre">timestampdiff</span></code> and runs through codegen
dispatch</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">date_format</span></code></p></td>
<td><p>✅</p></td>
@@ -1592,12 +1592,12 @@ expressions. The following function families are
<strong>not currently planned</
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">dateadd</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
-<td><p></p></td>
+<td><p>The 2-argument form is native; the <code class="docutils literal
notranslate"><span class="pre">dateadd(UNIT,</span> <span class="pre">n,</span>
<span class="pre">ts)</span></code> form parses to <code class="docutils
literal notranslate"><span class="pre">timestampadd</span></code> and runs
through codegen dispatch</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">datediff</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
-<td><p></p></td>
+<td><p>The 2-argument form is native; the <code class="docutils literal
notranslate"><span class="pre">datediff(UNIT,</span> <span
class="pre">start,</span> <span class="pre">end)</span></code> form parses to
<code class="docutils literal notranslate"><span
class="pre">timestampdiff</span></code> and runs through codegen
dispatch</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">datepart</span></code></p></td>
<td><p>✅</p></td>
@@ -1754,132 +1754,147 @@ expressions. The following function families are
<strong>not currently planned</
<td><p>—</p></td>
<td><p>Spark 4.1 TIME type; tracked by <a class="reference external"
href="https://github.com/apache/datafusion-comet/issues/4288">#4288</a></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">timestamp_micros</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">timediff</span></code></p></td>
+<td><p>✅</p></td>
+<td><p>—</p></td>
+<td><p>Spark 4.0+ grammar alias that parses to <code class="docutils literal
notranslate"><span class="pre">timestampdiff</span></code>; runs through
codegen dispatch</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">timestamp_micros</span></code></p></td>
<td><p>✅</p></td>
<td><p>Codegen dispatch</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">timestamp_millis</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">timestamp_millis</span></code></p></td>
<td><p>✅</p></td>
<td><p>Codegen dispatch</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">timestamp_seconds</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">timestamp_seconds</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_date</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">timestampadd</span></code></p></td>
+<td><p>✅</p></td>
+<td><p>—</p></td>
+<td><p>Reached through the grammar rather than the function registry; runs
through codegen dispatch</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">timestampdiff</span></code></p></td>
+<td><p>✅</p></td>
+<td><p>—</p></td>
+<td><p>Reached through the grammar rather than the function registry; runs
through codegen dispatch</p></td>
+</tr>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_date</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Rewrites to <code class="docutils literal notranslate"><span
class="pre">Cast</span></code> (or <code class="docutils literal
notranslate"><span class="pre">Cast(GetTimestamp)</span></code> with a format)
before Comet sees the plan</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_time</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_time</span></code></p></td>
<td><p>🔜</p></td>
<td><p>—</p></td>
<td><p>Spark 4.1 TIME type; tracked by <a class="reference external"
href="https://github.com/apache/datafusion-comet/issues/4288">#4288</a></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_timestamp</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_timestamp</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Rewrites to <code class="docutils literal notranslate"><span
class="pre">Cast</span></code> (or <code class="docutils literal
notranslate"><span class="pre">GetTimestamp</span></code> with a format) before
Comet sees the plan</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_timestamp_ltz</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_timestamp_ltz</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Rewrites to <code class="docutils literal notranslate"><span
class="pre">to_timestamp</span></code> (<code class="docutils literal
notranslate"><span class="pre">TimestampType</span></code>)</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_timestamp_ntz</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_timestamp_ntz</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Rewrites to <code class="docutils literal notranslate"><span
class="pre">to_timestamp</span></code> (<code class="docutils literal
notranslate"><span class="pre">TimestampNTZType</span></code>)</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_unix_timestamp</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_unix_timestamp</span></code></p></td>
<td><p>✅</p></td>
<td><p>Hybrid</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">to_utc_timestamp</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">to_utc_timestamp</span></code></p></td>
<td><p>✅</p></td>
<td><p>Hybrid</p></td>
<td><p>Routes through the JVM codegen dispatcher by default (handles all
timezone forms); the native path is opt-in via allowIncompatible (<a
class="reference internal" href="#compatibility/expressions/datetime.md"><span
class="xref myst">details</span></a>)</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">trunc</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">trunc</span></code></p></td>
<td><p>✅</p></td>
<td><p>Hybrid</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">try_make_interval</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">try_make_interval</span></code></p></td>
<td><p>🔜</p></td>
<td><p>—</p></td>
<td><p>Produces legacy CalendarInterval; tracked by <a class="reference
external"
href="https://github.com/apache/datafusion-comet/issues/5061">#5061</a></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">try_make_timestamp</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">try_make_timestamp</span></code></p></td>
<td><p>✅</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">try_to_date</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">try_to_date</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Rewrites to <code class="docutils literal notranslate"><span
class="pre">Cast</span></code>/<code class="docutils literal notranslate"><span
class="pre">GetTimestamp</span></code> before Comet sees the plan; same support
as <code class="docutils literal notranslate"><span
class="pre">to_date</span></code></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">try_to_time</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">try_to_time</span></code></p></td>
<td><p>🔜</p></td>
<td><p>—</p></td>
<td><p>Spark 4.1 TIME type; tracked by <a class="reference external"
href="https://github.com/apache/datafusion-comet/issues/4288">#4288</a></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">try_to_timestamp</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">try_to_timestamp</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Rewrites to <code class="docutils literal notranslate"><span
class="pre">Cast</span></code>/<code class="docutils literal notranslate"><span
class="pre">GetTimestamp</span></code> before Comet sees the plan; same support
as <code class="docutils literal notranslate"><span
class="pre">to_timestamp</span></code></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_date</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_date</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_micros</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_micros</span></code></p></td>
<td><p>✅</p></td>
<td><p>Codegen dispatch</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_millis</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_millis</span></code></p></td>
<td><p>✅</p></td>
<td><p>Codegen dispatch</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_seconds</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_seconds</span></code></p></td>
<td><p>✅</p></td>
<td><p>Codegen dispatch</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_timestamp</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">unix_timestamp</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">weekday</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">weekday</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">weekofyear</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">weekofyear</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">window</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">window</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Batch tumbling and sliding time-window grouping runs natively</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">window_time</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">window_time</span></code></p></td>
<td><p>✅</p></td>
<td><p>—</p></td>
<td><p>Batch time-window grouping runs natively</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">year</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">year</span></code></p></td>
<td><p>✅</p></td>
<td><p>Native</p></td>
<td><p></p></td>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]