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 5f8d42bd55 Publish built docs triggered by 
8fc9681b7430c2e0203441177a01225a6aaabe32
5f8d42bd55 is described below

commit 5f8d42bd558978630ab77a2c512883f36ef21fc2
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon Feb 9 13:55:39 2026 +0000

    Publish built docs triggered by 8fc9681b7430c2e0203441177a01225a6aaabe32
---
 .../library-user-guide/upgrading/53.0.0.md.txt     | 23 ++++++++++++++++++++++
 library-user-guide/upgrading/53.0.0.html           | 20 +++++++++++++++++++
 searchindex.js                                     |  2 +-
 3 files changed, 44 insertions(+), 1 deletion(-)

diff --git a/_sources/library-user-guide/upgrading/53.0.0.md.txt 
b/_sources/library-user-guide/upgrading/53.0.0.md.txt
index 4716a5734a..06c917b2ab 100644
--- a/_sources/library-user-guide/upgrading/53.0.0.md.txt
+++ b/_sources/library-user-guide/upgrading/53.0.0.md.txt
@@ -28,6 +28,29 @@
 
 [#19692]: https://github.com/apache/datafusion/issues/19692
 
+### `PlannerContext` outer query schema API now uses a stack
+
+`PlannerContext` no longer stores a single `outer_query_schema`. It now tracks 
a
+stack of outer relation schemas so nested subqueries can access non-adjacent
+outer relations.
+
+**Before:**
+
+```rust,ignore
+let old_outer_query_schema =
+    planner_context.set_outer_query_schema(Some(input_schema.clone().into()));
+let sub_plan = self.query_to_plan(subquery, planner_context)?;
+planner_context.set_outer_query_schema(old_outer_query_schema);
+```
+
+**After:**
+
+```rust,ignore
+planner_context.append_outer_query_schema(input_schema.clone().into());
+let sub_plan = self.query_to_plan(subquery, planner_context)?;
+planner_context.pop_outer_query_schema();
+```
+
 ### `FileSinkConfig` adds `file_output_mode`
 
 `FileSinkConfig` now includes a `file_output_mode: FileOutputMode` field to 
control
diff --git a/library-user-guide/upgrading/53.0.0.html 
b/library-user-guide/upgrading/53.0.0.html
index bc4e3a228d..62ddf947a9 100644
--- a/library-user-guide/upgrading/53.0.0.html
+++ b/library-user-guide/upgrading/53.0.0.html
@@ -427,6 +427,25 @@
 *in this section pertains to features and changes that have already been merged
 *to the main branch and are awaiting release in this version. See <a 
class="reference external" 
href="https://github.com/apache/datafusion/issues/19692";>#19692</a> for
 *more details.</p>
+<section id="plannercontext-outer-query-schema-api-now-uses-a-stack">
+<h3><code class="docutils literal notranslate"><span 
class="pre">PlannerContext</span></code> outer query schema API now uses a 
stack<a class="headerlink" 
href="#plannercontext-outer-query-schema-api-now-uses-a-stack" title="Link to 
this heading">#</a></h3>
+<p><code class="docutils literal notranslate"><span 
class="pre">PlannerContext</span></code> no longer stores a single <code 
class="docutils literal notranslate"><span 
class="pre">outer_query_schema</span></code>. It now tracks a
+stack of outer relation schemas so nested subqueries can access non-adjacent
+outer relations.</p>
+<p><strong>Before:</strong></p>
+<div class="highlight-rust notranslate"><div 
class="highlight"><pre><span></span><span class="kd">let</span><span class="w"> 
</span><span class="n">old_outer_query_schema</span><span class="w"> 
</span><span class="o">=</span>
+<span class="w">    </span><span class="n">planner_context</span><span 
class="p">.</span><span class="n">set_outer_query_schema</span><span 
class="p">(</span><span class="nb">Some</span><span class="p">(</span><span 
class="n">input_schema</span><span class="p">.</span><span 
class="n">clone</span><span class="p">().</span><span 
class="n">into</span><span class="p">()));</span>
+<span class="kd">let</span><span class="w"> </span><span 
class="n">sub_plan</span><span class="w"> </span><span class="o">=</span><span 
class="w"> </span><span class="bp">self</span><span class="p">.</span><span 
class="n">query_to_plan</span><span class="p">(</span><span 
class="n">subquery</span><span class="p">,</span><span class="w"> </span><span 
class="n">planner_context</span><span class="p">)</span><span 
class="o">?</span><span class="p">;</span>
+<span class="n">planner_context</span><span class="p">.</span><span 
class="n">set_outer_query_schema</span><span class="p">(</span><span 
class="n">old_outer_query_schema</span><span class="p">);</span>
+</pre></div>
+</div>
+<p><strong>After:</strong></p>
+<div class="highlight-rust notranslate"><div 
class="highlight"><pre><span></span><span class="n">planner_context</span><span 
class="p">.</span><span class="n">append_outer_query_schema</span><span 
class="p">(</span><span class="n">input_schema</span><span 
class="p">.</span><span class="n">clone</span><span class="p">().</span><span 
class="n">into</span><span class="p">());</span>
+<span class="kd">let</span><span class="w"> </span><span 
class="n">sub_plan</span><span class="w"> </span><span class="o">=</span><span 
class="w"> </span><span class="bp">self</span><span class="p">.</span><span 
class="n">query_to_plan</span><span class="p">(</span><span 
class="n">subquery</span><span class="p">,</span><span class="w"> </span><span 
class="n">planner_context</span><span class="p">)</span><span 
class="o">?</span><span class="p">;</span>
+<span class="n">planner_context</span><span class="p">.</span><span 
class="n">pop_outer_query_schema</span><span class="p">();</span>
+</pre></div>
+</div>
+</section>
 <section id="filesinkconfig-adds-file-output-mode">
 <h3><code class="docutils literal notranslate"><span 
class="pre">FileSinkConfig</span></code> adds <code class="docutils literal 
notranslate"><span class="pre">file_output_mode</span></code><a 
class="headerlink" href="#filesinkconfig-adds-file-output-mode" title="Link to 
this heading">#</a></h3>
 <p><code class="docutils literal notranslate"><span 
class="pre">FileSinkConfig</span></code> now includes a <code class="docutils 
literal notranslate"><span class="pre">file_output_mode:</span> <span 
class="pre">FileOutputMode</span></code> field to control
@@ -761,6 +780,7 @@ This behavior is consistent with systems like 
PostgreSQL.</p>
   <nav class="bd-toc-nav page-toc" 
aria-labelledby="pst-page-navigation-heading-2">
     <ul class="visible nav section-nav flex-column">
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" 
href="#datafusion-53-0-0">DataFusion 53.0.0</a><ul class="nav section-nav 
flex-column">
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#plannercontext-outer-query-schema-api-now-uses-a-stack"><code 
class="docutils literal notranslate"><span 
class="pre">PlannerContext</span></code> outer query schema API now uses a 
stack</a></li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#filesinkconfig-adds-file-output-mode"><code class="docutils literal 
notranslate"><span class="pre">FileSinkConfig</span></code> adds <code 
class="docutils literal notranslate"><span 
class="pre">file_output_mode</span></code></a></li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#simplifyinfo-trait-removed-simplifycontext-now-uses-builder-style-api"><code
 class="docutils literal notranslate"><span 
class="pre">SimplifyInfo</span></code> trait removed, <code class="docutils 
literal notranslate"><span class="pre">SimplifyContext</span></code> now uses 
builder-style API</a></li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#struct-casting-now-requires-field-name-overlap">Struct Casting Now 
Requires Field Name Overlap</a></li>
diff --git a/searchindex.js b/searchindex.js
index 2349b543aa..cafea6311a 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"!=":[[71,"op-neq"]],"!~":[[71,"op-re-not-match"]],"!~*":[[71,"op-re-not-match-i"]],"!~~":[[71,"id19"]],"!~~*":[[71,"id20"]],"#":[[71,"op-bit-xor"]],"%":[[71,"op-modulo"]],"&":[[71,"op-bit-and"]],"(relation,
 name) tuples in logical fields and logical columns are 
unique":[[14,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[71,"op-multiply"]],"+":[[71,"op-plus"]],"-":[[71,"op-minus"]],"/":[[71,"op-divide"]],"1.
 Array Literal Con [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"!=":[[71,"op-neq"]],"!~":[[71,"op-re-not-match"]],"!~*":[[71,"op-re-not-match-i"]],"!~~":[[71,"id19"]],"!~~*":[[71,"id20"]],"#":[[71,"op-bit-xor"]],"%":[[71,"op-modulo"]],"&":[[71,"op-bit-and"]],"(relation,
 name) tuples in logical fields and logical columns are 
unique":[[14,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[71,"op-multiply"]],"+":[[71,"op-plus"]],"-":[[71,"op-minus"]],"/":[[71,"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]

Reply via email to