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.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 0f757a37e4 Publish built docs triggered by
1e589287c3d6bcf3bc6fa897bb889a6012e1d229
0f757a37e4 is described below
commit 0f757a37e43031b03ec69f3745e59745288e6a13
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Fri Jul 17 11:52:28 2026 +0000
Publish built docs triggered by 1e589287c3d6bcf3bc6fa897bb889a6012e1d229
---
_sources/library-user-guide/upgrading/55.0.0.md.txt | 19 +++++++++++++++++++
library-user-guide/upgrading/55.0.0.html | 17 +++++++++++++++++
searchindex.js | 2 +-
3 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/_sources/library-user-guide/upgrading/55.0.0.md.txt
b/_sources/library-user-guide/upgrading/55.0.0.md.txt
index 807c0bd1b2..f52db8da93 100644
--- a/_sources/library-user-guide/upgrading/55.0.0.md.txt
+++ b/_sources/library-user-guide/upgrading/55.0.0.md.txt
@@ -631,3 +631,22 @@ field existed decode as a single partition, the previous
default, and plans
encoded after it add a field that older readers ignore.
See [PR #23643](https://github.com/apache/datafusion/pull/23643) for details.
+
+### `time ± interval` now returns a `time` instead of an `interval`
+
+Adding or subtracting an `interval` to/from a `time` value now returns a `time`
+that wraps within the 24-hour clock, matching PostgreSQL and DuckDB. Previously
+DataFusion returned an `interval`.
+
+```sql
+-- 55.0.0 onwards: returns a time
+SELECT time '23:30:00' + interval '2 hours';
+-- 01:30:00
+```
+
+Only the sub-day portion of the interval affects the result; whole days and
+months are ignored, as in PostgreSQL. The result keeps the input time's unit
+(mirroring `timestamp + interval`), and any interval precision finer than that
+unit is truncated -- so `time(s) + interval '1 nanosecond'` is a no-op.
+
+See [PR #23279](https://github.com/apache/datafusion/pull/23279) for details.
diff --git a/library-user-guide/upgrading/55.0.0.html
b/library-user-guide/upgrading/55.0.0.html
index 45fc691e8e..89f9398b69 100644
--- a/library-user-guide/upgrading/55.0.0.html
+++ b/library-user-guide/upgrading/55.0.0.html
@@ -984,6 +984,22 @@ field existed decode as a single partition, the previous
default, and plans
encoded after it add a field that older readers ignore.</p>
<p>See <a class="reference external"
href="https://github.com/apache/datafusion/pull/23643">PR #23643</a> for
details.</p>
</section>
+<section id="time-interval-now-returns-a-time-instead-of-an-interval">
+<h3><code class="docutils literal notranslate"><span class="pre">time</span>
<span class="pre">±</span> <span class="pre">interval</span></code> now returns
a <code class="docutils literal notranslate"><span
class="pre">time</span></code> instead of an <code class="docutils literal
notranslate"><span class="pre">interval</span></code><a class="headerlink"
href="#time-interval-now-returns-a-time-instead-of-an-interval" title="Link to
this heading">#</a></h3>
+<p>Adding or subtracting an <code class="docutils literal notranslate"><span
class="pre">interval</span></code> to/from a <code class="docutils literal
notranslate"><span class="pre">time</span></code> value now returns a <code
class="docutils literal notranslate"><span class="pre">time</span></code>
+that wraps within the 24-hour clock, matching PostgreSQL and DuckDB. Previously
+DataFusion returned an <code class="docutils literal notranslate"><span
class="pre">interval</span></code>.</p>
+<div class="highlight-sql notranslate"><div
class="highlight"><pre><span></span><span class="c1">-- 55.0.0 onwards: returns
a time</span>
+<span class="k">SELECT</span><span class="w"> </span><span
class="k">time</span><span class="w"> </span><span
class="s1">'23:30:00'</span><span class="w"> </span><span
class="o">+</span><span class="w"> </span><span class="nb">interval</span><span
class="w"> </span><span class="s1">'2 hours'</span><span
class="p">;</span>
+<span class="c1">-- 01:30:00</span>
+</pre></div>
+</div>
+<p>Only the sub-day portion of the interval affects the result; whole days and
+months are ignored, as in PostgreSQL. The result keeps the input time’s unit
+(mirroring <code class="docutils literal notranslate"><span
class="pre">timestamp</span> <span class="pre">+</span> <span
class="pre">interval</span></code>), and any interval precision finer than that
+unit is truncated – so <code class="docutils literal notranslate"><span
class="pre">time(s)</span> <span class="pre">+</span> <span
class="pre">interval</span> <span class="pre">'1</span> <span
class="pre">nanosecond'</span></code> is a no-op.</p>
+<p>See <a class="reference external"
href="https://github.com/apache/datafusion/pull/23279">PR #23279</a> for
details.</p>
+</section>
</section>
</section>
@@ -1053,6 +1069,7 @@ encoded after it add a field that older readers
ignore.</p>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link"
href="#unify-lru-memory-limiting-caches-into-one-generic-cache">Unify LRU
memory-limiting caches into one generic cache</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link"
href="#cachedfilemetadata-now-validates-file-schema"><code class="docutils
literal notranslate"><span class="pre">CachedFileMetadata</span></code> now
validates file schema</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link"
href="#emptyexecnode-and-placeholderrowexecnode-gained-a-partitions-field"><code
class="docutils literal notranslate"><span
class="pre">EmptyExecNode</span></code> and <code class="docutils literal
notranslate"><span class="pre">PlaceholderRowExecNode</span></code> gained a
<code class="docutils literal notranslate"><span
class="pre">partitions</span></code> field</a></li>
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link"
href="#time-interval-now-returns-a-time-instead-of-an-interval"><code
class="docutils literal notranslate"><span class="pre">time</span> <span
class="pre">±</span> <span class="pre">interval</span></code> now returns a
<code class="docutils literal notranslate"><span class="pre">time</span></code>
instead of an <code class="docutils literal notranslate"><span
class="pre">interval</span></code></a></li>
</ul>
</li>
</ul>
diff --git a/searchindex.js b/searchindex.js
index 855313fef3..75ac0005d0 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"!=":[[74,"op-neq"]],"!~":[[74,"op-re-not-match"]],"!~*":[[74,"op-re-not-match-i"]],"!~~":[[74,"id19"]],"!~~*":[[74,"id20"]],"#":[[74,"op-bit-xor"]],"%":[[74,"op-modulo"]],"&":[[74,"op-bit-and"]],"(relation,
name) tuples in logical fields and logical columns are
unique":[[15,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[74,"op-multiply"]],"+":[[74,"op-plus"]],"-":[[74,"op-minus"]],"/":[[74,"op-divide"]],"1.
Array Literal Con [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"!=":[[74,"op-neq"]],"!~":[[74,"op-re-not-match"]],"!~*":[[74,"op-re-not-match-i"]],"!~~":[[74,"id19"]],"!~~*":[[74,"id20"]],"#":[[74,"op-bit-xor"]],"%":[[74,"op-modulo"]],"&":[[74,"op-bit-and"]],"(relation,
name) tuples in logical fields and logical columns are
unique":[[15,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[74,"op-multiply"]],"+":[[74,"op-plus"]],"-":[[74,"op-minus"]],"/":[[74,"op-divide"]],"1.
Array Literal Con [...]
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]