This is an automated email from the ASF dual-hosted git repository. github-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 8fc46afc4f Publish built docs triggered by baf6f602879030dea741322d6f219d401983bb78 8fc46afc4f is described below commit 8fc46afc4f24eb1e7b859ad3d9e9a0bf54fe9b08 Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com> AuthorDate: Sun Sep 7 08:57:57 2025 +0000 Publish built docs triggered by baf6f602879030dea741322d6f219d401983bb78 --- _sources/library-user-guide/upgrading.md.txt | 18 ++++++++++++++++++ library-user-guide/upgrading.html | 18 ++++++++++++++++++ searchindex.js | 2 +- 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/_sources/library-user-guide/upgrading.md.txt b/_sources/library-user-guide/upgrading.md.txt index 8c26d4e9a9..b9fbc6e1be 100644 --- a/_sources/library-user-guide/upgrading.md.txt +++ b/_sources/library-user-guide/upgrading.md.txt @@ -275,6 +275,24 @@ If you have custom implementations of `FileOpener` or work directly with `FileOp [#17397]: https://github.com/apache/datafusion/pull/17397 +### FFI user defined aggregate function signature change + +The Foreign Function Interface (FFI) signature for user defined aggregate functions +has been updated to call `return_field` instead of `return_type` on the underlying +aggregate function. This is to support metadata handling with these aggregate functions. +This change should be transparent to most users. If you have written unit tests to call +`return_type` directly, you may need to change them to calling `return_field` instead. + +This update is a breaking change to the FFI API. The current best practice when using the +FFI crate is to ensure that all libraries that are interacting are using the same +underlying Rust version. Issue [#17374] has been opened to discuss stabilization of +this interface so that these libraries can be used across different DataFusion versions. + +See [#17407] for details. + +[#17407]: https://github.com/apache/datafusion/pull/17407 +[#17374]: https://github.com/apache/datafusion/issues/17374 + ### Added `PhysicalExpr::is_volatile_node` We added a method to `PhysicalExpr` to mark a `PhysicalExpr` as volatile: diff --git a/library-user-guide/upgrading.html b/library-user-guide/upgrading.html index 8360749a8c..abd7dfd257 100644 --- a/library-user-guide/upgrading.html +++ b/library-user-guide/upgrading.html @@ -760,6 +760,11 @@ </code> </a> </li> + <li class="toc-h3 nav-item toc-entry"> + <a class="reference internal nav-link" href="#ffi-user-defined-aggregate-function-signature-change"> + FFI user defined aggregate function signature change + </a> + </li> <li class="toc-h3 nav-item toc-entry"> <a class="reference internal nav-link" href="#added-physicalexpr-is-volatile-node"> Added @@ -1496,6 +1501,19 @@ Reimplementation for any custom <code class="docutils literal notranslate"><span </div> <p>If you have custom implementations of <code class="docutils literal notranslate"><span class="pre">FileOpener</span></code> or work directly with <code class="docutils literal notranslate"><span class="pre">FileOpenFuture</span></code>, you’ll need to update your error handling to use <code class="docutils literal notranslate"><span class="pre">DataFusionError</span></code> instead of <code class="docutils literal notranslate"><span class="pre">ArrowError</span></code>. The <code clas [...] </section> +<section id="ffi-user-defined-aggregate-function-signature-change"> +<h3>FFI user defined aggregate function signature change<a class="headerlink" href="#ffi-user-defined-aggregate-function-signature-change" title="Link to this heading">¶</a></h3> +<p>The Foreign Function Interface (FFI) signature for user defined aggregate functions +has been updated to call <code class="docutils literal notranslate"><span class="pre">return_field</span></code> instead of <code class="docutils literal notranslate"><span class="pre">return_type</span></code> on the underlying +aggregate function. This is to support metadata handling with these aggregate functions. +This change should be transparent to most users. If you have written unit tests to call +<code class="docutils literal notranslate"><span class="pre">return_type</span></code> directly, you may need to change them to calling <code class="docutils literal notranslate"><span class="pre">return_field</span></code> instead.</p> +<p>This update is a breaking change to the FFI API. The current best practice when using the +FFI crate is to ensure that all libraries that are interacting are using the same +underlying Rust version. Issue <a class="reference external" href="https://github.com/apache/datafusion/issues/17374">#17374</a> has been opened to discuss stabilization of +this interface so that these libraries can be used across different DataFusion versions.</p> +<p>See <a class="reference external" href="https://github.com/apache/datafusion/pull/17407">#17407</a> for details.</p> +</section> <section id="added-physicalexpr-is-volatile-node"> <h3>Added <code class="docutils literal notranslate"><span class="pre">PhysicalExpr::is_volatile_node</span></code><a class="headerlink" href="#added-physicalexpr-is-volatile-node" title="Link to this heading">¶</a></h3> <p>We added a method to <code class="docutils literal notranslate"><span class="pre">PhysicalExpr</span></code> to mark a <code class="docutils literal notranslate"><span class="pre">PhysicalExpr</span></code> as volatile:</p> diff --git a/searchindex.js b/searchindex.js index 15640d019c..7ec94f6a88 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles":{"!=":[[57,"op-neq"]],"!~":[[57,"op-re-not-match"]],"!~*":[[57,"op-re-not-match-i"]],"!~~":[[57,"id19"]],"!~~*":[[57,"id20"]],"#":[[57,"op-bit-xor"]],"%":[[57,"op-modulo"]],"&":[[57,"op-bit-and"]],"(relation, name) tuples in logical fields and logical columns are unique":[[12,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[57,"op-multiply"]],"+":[[57,"op-plus"]],"-":[[57,"op-minus"]],"/":[[57,"op-divide"]],"<":[[57,"op-lt"]],"< [...] \ No newline at end of file +Search.setIndex({"alltitles":{"!=":[[57,"op-neq"]],"!~":[[57,"op-re-not-match"]],"!~*":[[57,"op-re-not-match-i"]],"!~~":[[57,"id19"]],"!~~*":[[57,"id20"]],"#":[[57,"op-bit-xor"]],"%":[[57,"op-modulo"]],"&":[[57,"op-bit-and"]],"(relation, name) tuples in logical fields and logical columns are unique":[[12,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[57,"op-multiply"]],"+":[[57,"op-plus"]],"-":[[57,"op-minus"]],"/":[[57,"op-divide"]],"<":[[57,"op-lt"]],"< [...] \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@datafusion.apache.org For additional commands, e-mail: commits-h...@datafusion.apache.org