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 898789275f Publish built docs triggered by 
d3792410d9444afe9eb6d67d383210f81dad3cdf
898789275f is described below

commit 898789275ff4c7c97d6b1b2ef835ca6221e12e29
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon May 18 21:55:07 2026 +0000

    Publish built docs triggered by d3792410d9444afe9eb6d67d383210f81dad3cdf
---
 .../library-user-guide/upgrading/54.0.0.md.txt     | 39 ++++++++++++++++++++++
 _sources/user-guide/configs.md.txt                 | 17 +++++-----
 library-user-guide/upgrading/54.0.0.html           | 29 ++++++++++++++++
 searchindex.js                                     |  2 +-
 user-guide/configs.html                            | 16 +++++----
 5 files changed, 88 insertions(+), 15 deletions(-)

diff --git a/_sources/library-user-guide/upgrading/54.0.0.md.txt 
b/_sources/library-user-guide/upgrading/54.0.0.md.txt
index 0117a776b2..076b65444f 100644
--- a/_sources/library-user-guide/upgrading/54.0.0.md.txt
+++ b/_sources/library-user-guide/upgrading/54.0.0.md.txt
@@ -716,3 +716,42 @@ move the borrow behind an interior-mutability primitive 
such as `Arc<Mutex<_>>`
 or `Arc<OnceLock<_>>`.
 
 See [PR #21803](https://github.com/apache/datafusion/pull/21803) for details.
+
+[20047]: https://github.com/apache/datafusion/pull/20047
+
+### File statistics cache is now memory-limited and managed by the 
`CacheManager`
+
+The file statistics cache used by `ListingTable` is now memory-limited and
+centrally managed through the `CacheManager`.
+
+To configure the cache size use the `file_statistics_cache_limit` setting:
+
+```sql
+SET datafusion.runtime.file_statistics_cache_limit = '10M'
+```
+
+To disable the file statistics cache, set the limit to 0.
+
+The file statistics cache is no longer created inside the `ListingTable`.
+Instead, it is created within the `CacheManager` and must be passed to the 
`ListingTable`.
+
+**Who is affected:**
+
+- Users who want to limit the memory usage of the file statistics cache.
+- Users who want to disable the file statistics cache.
+- Users who want to create a `ListingTable` programmatically with a file 
statistics cache.
+
+**Migration guide:**
+
+Disable the cache by setting the configuration value to 0:
+
+```sql
+SET datafusion.runtime.file_statistics_cache_limit = '0'
+```
+
+Use the file statistics cache provided by the `CacheManager` when initializing 
a new `ListingTable`:
+
+```rust,ignore
+ListingTable::try_new(config)?
+  .with_cache(ctx.runtime_env().cache_manager.get_file_statistic_cache())
+```
diff --git a/_sources/user-guide/configs.md.txt 
b/_sources/user-guide/configs.md.txt
index f7f9426e2b..f0bab1c4db 100644
--- a/_sources/user-guide/configs.md.txt
+++ b/_sources/user-guide/configs.md.txt
@@ -229,14 +229,15 @@ SET datafusion.runtime.memory_limit = '2G';
 
 The following runtime configuration settings are available:
 
-| key                                        | default | description           
                                                                                
                                                                                
 |
-| ------------------------------------------ | ------- | 
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 |
-| datafusion.runtime.list_files_cache_limit  | 1M      | Maximum memory to use 
for list files cache. Supports suffixes K (kilobytes), M (megabytes), and G 
(gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                        
     |
-| datafusion.runtime.list_files_cache_ttl    | NULL    | TTL (time-to-live) of 
the entries in the list file cache. Supports units m (minutes), and s 
(seconds). Example: '2m' for 2 minutes.                                         
           |
-| datafusion.runtime.max_temp_directory_size | 100G    | Maximum temporary 
file directory size. Supports suffixes K (kilobytes), M (megabytes), and G 
(gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                        
          |
-| datafusion.runtime.memory_limit            | NULL    | Maximum memory limit 
for query execution. Supports suffixes K (kilobytes), M (megabytes), and G 
(gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                        
       |
-| datafusion.runtime.metadata_cache_limit    | 50M     | Maximum memory to use 
for file metadata cache such as Parquet metadata. Supports suffixes K 
(kilobytes), M (megabytes), and G (gigabytes) or '0' for 0. Example: '2G' for 2 
gigabytes. |
-| datafusion.runtime.temp_directory          | NULL    | The path to the 
temporary file directory.                                                       
                                                                                
       |
+| key                                            | default | description       
                                                                                
                                                                                
     |
+| ---------------------------------------------- | ------- | 
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 |
+| datafusion.runtime.file_statistics_cache_limit | 20M     | Maximum memory to 
use for file statistics cache. Supports suffixes K (kilobytes), M (megabytes), 
and G (gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                  
      |
+| datafusion.runtime.list_files_cache_limit      | 1M      | Maximum memory to 
use for list files cache. Supports suffixes K (kilobytes), M (megabytes), and G 
(gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                        
     |
+| datafusion.runtime.list_files_cache_ttl        | NULL    | TTL 
(time-to-live) of the entries in the list file cache. Supports units m 
(minutes), and s (seconds). Example: '2m' for 2 minutes.                        
                            |
+| datafusion.runtime.max_temp_directory_size     | 100G    | Maximum temporary 
file directory size. Supports suffixes K (kilobytes), M (megabytes), and G 
(gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                        
          |
+| datafusion.runtime.memory_limit                | NULL    | Maximum memory 
limit for query execution. Supports suffixes K (kilobytes), M (megabytes), and 
G (gigabytes) or '0' for 0. Example: '2G' for 2 gigabytes.                      
         |
+| datafusion.runtime.metadata_cache_limit        | 50M     | Maximum memory to 
use for file metadata cache such as Parquet metadata. Supports suffixes K 
(kilobytes), M (megabytes), and G (gigabytes) or '0' for 0. Example: '2G' for 2 
gigabytes. |
+| datafusion.runtime.temp_directory              | NULL    | The path to the 
temporary file directory.                                                       
                                                                                
       |
 
 # Tuning Guide
 
diff --git a/library-user-guide/upgrading/54.0.0.html 
b/library-user-guide/upgrading/54.0.0.html
index bb66d684f8..17ba8d1822 100644
--- a/library-user-guide/upgrading/54.0.0.html
+++ b/library-user-guide/upgrading/54.0.0.html
@@ -1084,6 +1084,34 @@ move the borrow behind an interior-mutability primitive 
such as <code class="doc
 or <code class="docutils literal notranslate"><span 
class="pre">Arc&lt;OnceLock&lt;_&gt;&gt;</span></code>.</p>
 <p>See <a class="reference external" 
href="https://github.com/apache/datafusion/pull/21803";>PR #21803</a> for 
details.</p>
 </section>
+<section 
id="file-statistics-cache-is-now-memory-limited-and-managed-by-the-cachemanager">
+<h3>File statistics cache is now memory-limited and managed by the <code 
class="docutils literal notranslate"><span 
class="pre">CacheManager</span></code><a class="headerlink" 
href="#file-statistics-cache-is-now-memory-limited-and-managed-by-the-cachemanager"
 title="Link to this heading">#</a></h3>
+<p>The file statistics cache used by <code class="docutils literal 
notranslate"><span class="pre">ListingTable</span></code> is now memory-limited 
and
+centrally managed through the <code class="docutils literal notranslate"><span 
class="pre">CacheManager</span></code>.</p>
+<p>To configure the cache size use the <code class="docutils literal 
notranslate"><span class="pre">file_statistics_cache_limit</span></code> 
setting:</p>
+<div class="highlight-sql notranslate"><div 
class="highlight"><pre><span></span><span class="k">SET</span><span class="w"> 
</span><span class="n">datafusion</span><span class="p">.</span><span 
class="n">runtime</span><span class="p">.</span><span 
class="n">file_statistics_cache_limit</span><span class="w"> </span><span 
class="o">=</span><span class="w"> </span><span class="s1">&#39;10M&#39;</span>
+</pre></div>
+</div>
+<p>To disable the file statistics cache, set the limit to 0.</p>
+<p>The file statistics cache is no longer created inside the <code 
class="docutils literal notranslate"><span 
class="pre">ListingTable</span></code>.
+Instead, it is created within the <code class="docutils literal 
notranslate"><span class="pre">CacheManager</span></code> and must be passed to 
the <code class="docutils literal notranslate"><span 
class="pre">ListingTable</span></code>.</p>
+<p><strong>Who is affected:</strong></p>
+<ul class="simple">
+<li><p>Users who want to limit the memory usage of the file statistics 
cache.</p></li>
+<li><p>Users who want to disable the file statistics cache.</p></li>
+<li><p>Users who want to create a <code class="docutils literal 
notranslate"><span class="pre">ListingTable</span></code> programmatically with 
a file statistics cache.</p></li>
+</ul>
+<p><strong>Migration guide:</strong></p>
+<p>Disable the cache by setting the configuration value to 0:</p>
+<div class="highlight-sql notranslate"><div 
class="highlight"><pre><span></span><span class="k">SET</span><span class="w"> 
</span><span class="n">datafusion</span><span class="p">.</span><span 
class="n">runtime</span><span class="p">.</span><span 
class="n">file_statistics_cache_limit</span><span class="w"> </span><span 
class="o">=</span><span class="w"> </span><span class="s1">&#39;0&#39;</span>
+</pre></div>
+</div>
+<p>Use the file statistics cache provided by the <code class="docutils literal 
notranslate"><span class="pre">CacheManager</span></code> when initializing a 
new <code class="docutils literal notranslate"><span 
class="pre">ListingTable</span></code>:</p>
+<div class="highlight-rust notranslate"><div 
class="highlight"><pre><span></span><span class="n">ListingTable</span><span 
class="p">::</span><span class="n">try_new</span><span class="p">(</span><span 
class="n">config</span><span class="p">)</span><span class="o">?</span>
+<span class="w">  </span><span class="p">.</span><span 
class="n">with_cache</span><span class="p">(</span><span 
class="n">ctx</span><span class="p">.</span><span 
class="n">runtime_env</span><span class="p">().</span><span 
class="n">cache_manager</span><span class="p">.</span><span 
class="n">get_file_statistic_cache</span><span class="p">())</span>
+</pre></div>
+</div>
+</section>
 </section>
 </section>
 
@@ -1161,6 +1189,7 @@ or <code class="docutils literal notranslate"><span 
class="pre">Arc&lt;OnceLock&
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#arrays-zip-struct-field-names-changed"><code class="docutils literal 
notranslate"><span class="pre">arrays_zip</span></code> struct field names 
changed</a></li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#box-c-and-arc-c-treenodecontainer-impls-now-require-c-default"><code 
class="docutils literal notranslate"><span 
class="pre">Box&lt;C&gt;</span></code> and <code class="docutils literal 
notranslate"><span class="pre">Arc&lt;C&gt;</span></code> <code class="docutils 
literal notranslate"><span class="pre">TreeNodeContainer</span></code> impls 
now require <code class="docutils literal notranslate"><span class [...]
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#memorypool-now-requires-static-adds-any-as-a-supertrait"><code 
class="docutils literal notranslate"><span class="pre">MemoryPool</span></code> 
now requires <code class="docutils literal notranslate"><span 
class="pre">'static</span></code> (adds <code class="docutils literal 
notranslate"><span class="pre">Any</span></code> as a supertrait)</a></li>
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" 
href="#file-statistics-cache-is-now-memory-limited-and-managed-by-the-cachemanager">File
 statistics cache is now memory-limited and managed by the <code 
class="docutils literal notranslate"><span 
class="pre">CacheManager</span></code></a></li>
 </ul>
 </li>
 </ul>
diff --git a/searchindex.js b/searchindex.js
index f072fd6903..14467b528b 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"!=":[[73,"op-neq"]],"!~":[[73,"op-re-not-match"]],"!~*":[[73,"op-re-not-match-i"]],"!~~":[[73,"id19"]],"!~~*":[[73,"id20"]],"#":[[73,"op-bit-xor"]],"%":[[73,"op-modulo"]],"&":[[73,"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"]],"*":[[73,"op-multiply"]],"+":[[73,"op-plus"]],"-":[[73,"op-minus"]],"/":[[73,"op-divide"]],"1.
 Array Literal Con [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"!=":[[73,"op-neq"]],"!~":[[73,"op-re-not-match"]],"!~*":[[73,"op-re-not-match-i"]],"!~~":[[73,"id19"]],"!~~*":[[73,"id20"]],"#":[[73,"op-bit-xor"]],"%":[[73,"op-modulo"]],"&":[[73,"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"]],"*":[[73,"op-multiply"]],"+":[[73,"op-plus"]],"-":[[73,"op-minus"]],"/":[[73,"op-divide"]],"1.
 Array Literal Con [...]
\ No newline at end of file
diff --git a/user-guide/configs.html b/user-guide/configs.html
index efaf6c73f7..f7b432a0ea 100644
--- a/user-guide/configs.html
+++ b/user-guide/configs.html
@@ -1049,27 +1049,31 @@ example, to set and reset <code class="docutils literal 
notranslate"><span class
 </tr>
 </thead>
 <tbody>
-<tr class="row-even"><td><p>datafusion.runtime.list_files_cache_limit</p></td>
+<tr 
class="row-even"><td><p>datafusion.runtime.file_statistics_cache_limit</p></td>
+<td><p>20M</p></td>
+<td><p>Maximum memory to use for file statistics cache. Supports suffixes K 
(kilobytes), M (megabytes), and G (gigabytes) or ‘0’ for 0. Example: ‘2G’ for 2 
gigabytes.</p></td>
+</tr>
+<tr class="row-odd"><td><p>datafusion.runtime.list_files_cache_limit</p></td>
 <td><p>1M</p></td>
 <td><p>Maximum memory to use for list files cache. Supports suffixes K 
(kilobytes), M (megabytes), and G (gigabytes) or ‘0’ for 0. Example: ‘2G’ for 2 
gigabytes.</p></td>
 </tr>
-<tr class="row-odd"><td><p>datafusion.runtime.list_files_cache_ttl</p></td>
+<tr class="row-even"><td><p>datafusion.runtime.list_files_cache_ttl</p></td>
 <td><p>NULL</p></td>
 <td><p>TTL (time-to-live) of the entries in the list file cache. Supports 
units m (minutes), and s (seconds). Example: ‘2m’ for 2 minutes.</p></td>
 </tr>
-<tr class="row-even"><td><p>datafusion.runtime.max_temp_directory_size</p></td>
+<tr class="row-odd"><td><p>datafusion.runtime.max_temp_directory_size</p></td>
 <td><p>100G</p></td>
 <td><p>Maximum temporary file directory size. Supports suffixes K (kilobytes), 
M (megabytes), and G (gigabytes) or ‘0’ for 0. Example: ‘2G’ for 2 
gigabytes.</p></td>
 </tr>
-<tr class="row-odd"><td><p>datafusion.runtime.memory_limit</p></td>
+<tr class="row-even"><td><p>datafusion.runtime.memory_limit</p></td>
 <td><p>NULL</p></td>
 <td><p>Maximum memory limit for query execution. Supports suffixes K 
(kilobytes), M (megabytes), and G (gigabytes) or ‘0’ for 0. Example: ‘2G’ for 2 
gigabytes.</p></td>
 </tr>
-<tr class="row-even"><td><p>datafusion.runtime.metadata_cache_limit</p></td>
+<tr class="row-odd"><td><p>datafusion.runtime.metadata_cache_limit</p></td>
 <td><p>50M</p></td>
 <td><p>Maximum memory to use for file metadata cache such as Parquet metadata. 
Supports suffixes K (kilobytes), M (megabytes), and G (gigabytes) or ‘0’ for 0. 
Example: ‘2G’ for 2 gigabytes.</p></td>
 </tr>
-<tr class="row-odd"><td><p>datafusion.runtime.temp_directory</p></td>
+<tr class="row-even"><td><p>datafusion.runtime.temp_directory</p></td>
 <td><p>NULL</p></td>
 <td><p>The path to the temporary file directory.</p></td>
 </tr>


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to