You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datafusion.apache.org by gi...@apache.org on 2026/05/15 13:29:13 UTC
(datafusion-python) branch asf-staging updated: Publish built docs triggered by baef8f00e1de6a086fa1814c98e65d216fb16277
This is an automated email from the ASF dual-hosted git repository.
github-actions[bot] pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/datafusion-python.git
The following commit(s) were added to refs/heads/asf-staging by this push:
new 1cd9e15b Publish built docs triggered by baef8f00e1de6a086fa1814c98e65d216fb16277
1cd9e15b is described below
commit 1cd9e15bf68448a2224b927676cec810eaaaccb8
Author: github-actions[bot] <gi...@users.noreply.github.com>
AuthorDate: Fri May 15 13:29:08 2026 +0000
Publish built docs triggered by baef8f00e1de6a086fa1814c98e65d216fb16277
---
_sources/autoapi/datafusion/context/index.rst.txt | 15 +++
_sources/autoapi/datafusion/expr/index.rst.txt | 21 ++++
_sources/autoapi/datafusion/index.rst.txt | 84 ++++++++++++---
_sources/autoapi/datafusion/plan/index.rst.txt | 63 ++++++++---
autoapi/datafusion/context/index.html | 32 ++++++
autoapi/datafusion/expr/index.html | 35 +++++++
autoapi/datafusion/index.html | 122 ++++++++++++++++++++--
autoapi/datafusion/plan/index.html | 87 +++++++++++++--
genindex.html | 44 ++++++--
objects.inv | Bin 10126 -> 10229 bytes
searchindex.js | 2 +-
user-guide/common-operations/aggregations.html | 36 +++----
user-guide/common-operations/basic-info.html | 46 ++++----
user-guide/common-operations/functions.html | 20 ++--
user-guide/common-operations/udf-and-udfa.html | 4 +-
15 files changed, 511 insertions(+), 100 deletions(-)
diff --git a/_sources/autoapi/datafusion/context/index.rst.txt b/_sources/autoapi/datafusion/context/index.rst.txt
index 4a7f6741..3f479de9 100644
--- a/_sources/autoapi/datafusion/context/index.rst.txt
+++ b/_sources/autoapi/datafusion/context/index.rst.txt
@@ -442,6 +442,12 @@ Module Contents
+ .. py:method:: __datafusion_physical_extension_codec__() -> Any
+
+ Access the PyCapsule FFI_PhysicalExtensionCodec.
+
+
+
.. py:method:: __datafusion_task_context_provider__() -> Any
Access the PyCapsule FFI_TaskContextProvider.
@@ -1281,6 +1287,15 @@ Module Contents
+ .. py:method:: with_physical_extension_codec(codec: Any) -> SessionContext
+
+ Create a new session context with the specified physical codec.
+
+ This only supports codecs that have been implemented using the
+ FFI interface.
+
+
+
.. py:attribute:: ctx
diff --git a/_sources/autoapi/datafusion/expr/index.rst.txt b/_sources/autoapi/datafusion/expr/index.rst.txt
index 2ff3e584..8e0e3255 100644
--- a/_sources/autoapi/datafusion/expr/index.rst.txt
+++ b/_sources/autoapi/datafusion/expr/index.rst.txt
@@ -626,6 +626,17 @@ Module Contents
+ .. py:method:: from_bytes(ctx: datafusion.context.SessionContext, data: bytes) -> Expr
+ :staticmethod:
+
+
+ Decode an expression from serialized protobuf bytes.
+
+ ``ctx`` provides the function registry for resolving UDF
+ references and the logical codec for in-band Python payloads.
+
+
+
.. py:method:: from_unixtime() -> Expr
Converts an integer to RFC3339 timestamp format string.
@@ -955,6 +966,16 @@ Module Contents
+ .. py:method:: to_bytes(ctx: datafusion.context.SessionContext | None = None) -> bytes
+
+ Serialize this expression to protobuf bytes.
+
+ When ``ctx`` is supplied, encoding routes through the session's
+ installed :class:`LogicalExtensionCodec`. Without ``ctx`` a
+ default codec is used.
+
+
+
.. py:method:: to_hex() -> Expr
Converts an integer to a hexadecimal string.
diff --git a/_sources/autoapi/datafusion/index.rst.txt b/_sources/autoapi/datafusion/index.rst.txt
index 729b16f2..b562329f 100644
--- a/_sources/autoapi/datafusion/index.rst.txt
+++ b/_sources/autoapi/datafusion/index.rst.txt
@@ -470,13 +470,23 @@ Package Contents
- .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> ExecutionPlan
+ .. py:method:: from_bytes(ctx: datafusion.context.SessionContext, data: bytes) -> ExecutionPlan
:staticmethod:
- Create an ExecutionPlan from protobuf bytes.
+ Create an ExecutionPlan from serialized protobuf bytes.
+
+ Decoding routes through the session's installed
+ `PhysicalExtensionCodec`. Tables created in memory from record
+ batches are currently not supported.
+
+
+
+ .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> ExecutionPlan
+ :staticmethod:
+
- Tables created in memory from record batches are currently not supported.
+ Deprecated alias for :meth:`from_bytes`.
@@ -491,11 +501,19 @@ Package Contents
- .. py:method:: to_proto() -> bytes
+ .. py:method:: to_bytes(ctx: datafusion.context.SessionContext | None = None) -> bytes
+
+ Convert an ExecutionPlan into serialized protobuf bytes.
- Convert an ExecutionPlan into protobuf bytes.
+ When ``ctx`` is supplied, encoding routes through the session's
+ installed `PhysicalExtensionCodec`. Tables created in memory
+ from record batches are currently not supported.
- Tables created in memory from record batches are currently not supported.
+
+
+ .. py:method:: to_proto() -> bytes
+
+ Deprecated alias for :meth:`to_bytes`.
@@ -977,6 +995,17 @@ Package Contents
+ .. py:method:: from_bytes(ctx: datafusion.context.SessionContext, data: bytes) -> Expr
+ :staticmethod:
+
+
+ Decode an expression from serialized protobuf bytes.
+
+ ``ctx`` provides the function registry for resolving UDF
+ references and the logical codec for in-band Python payloads.
+
+
+
.. py:method:: from_unixtime() -> Expr
Converts an integer to RFC3339 timestamp format string.
@@ -1306,6 +1335,16 @@ Package Contents
+ .. py:method:: to_bytes(ctx: datafusion.context.SessionContext | None = None) -> bytes
+
+ Serialize this expression to protobuf bytes.
+
+ When ``ctx`` is supplied, encoding routes through the session's
+ installed :class:`LogicalExtensionCodec`. Without ``ctx`` a
+ default codec is used.
+
+
+
.. py:method:: to_hex() -> Expr
Converts an integer to a hexadecimal string.
@@ -1470,13 +1509,23 @@ Package Contents
- .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> LogicalPlan
+ .. py:method:: from_bytes(ctx: datafusion.context.SessionContext, data: bytes) -> LogicalPlan
:staticmethod:
- Create a LogicalPlan from protobuf bytes.
+ Create a LogicalPlan from serialized protobuf bytes.
+
+ Decoding routes through the session's installed
+ `LogicalExtensionCodec`. Tables created in memory from record
+ batches are currently not supported.
+
+
+
+ .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> LogicalPlan
+ :staticmethod:
- Tables created in memory from record batches are currently not supported.
+
+ Deprecated alias for :meth:`from_bytes`.
@@ -1486,11 +1535,22 @@ Package Contents
- .. py:method:: to_proto() -> bytes
+ .. py:method:: to_bytes(ctx: datafusion.context.SessionContext | None = None) -> bytes
- Convert a LogicalPlan to protobuf bytes.
+ Convert a LogicalPlan to serialized protobuf bytes.
+
+ When ``ctx`` is supplied, encoding routes through the session's
+ installed `LogicalExtensionCodec` so user FFI codecs (registered
+ via :py:meth:`SessionContext.with_logical_extension_codec`) see
+ the encode path. With ``ctx=None`` a default codec is used.
+ Tables created in memory from record batches are currently not
+ supported.
+
+
+
+ .. py:method:: to_proto() -> bytes
- Tables created in memory from record batches are currently not supported.
+ Deprecated alias for :meth:`to_bytes`.
diff --git a/_sources/autoapi/datafusion/plan/index.rst.txt b/_sources/autoapi/datafusion/plan/index.rst.txt
index 3b87b154..2db4c17d 100644
--- a/_sources/autoapi/datafusion/plan/index.rst.txt
+++ b/_sources/autoapi/datafusion/plan/index.rst.txt
@@ -84,13 +84,23 @@ Module Contents
- .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> ExecutionPlan
+ .. py:method:: from_bytes(ctx: datafusion.context.SessionContext, data: bytes) -> ExecutionPlan
:staticmethod:
- Create an ExecutionPlan from protobuf bytes.
+ Create an ExecutionPlan from serialized protobuf bytes.
+
+ Decoding routes through the session's installed
+ `PhysicalExtensionCodec`. Tables created in memory from record
+ batches are currently not supported.
+
+
+
+ .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> ExecutionPlan
+ :staticmethod:
+
- Tables created in memory from record batches are currently not supported.
+ Deprecated alias for :meth:`from_bytes`.
@@ -105,11 +115,19 @@ Module Contents
- .. py:method:: to_proto() -> bytes
+ .. py:method:: to_bytes(ctx: datafusion.context.SessionContext | None = None) -> bytes
+
+ Convert an ExecutionPlan into serialized protobuf bytes.
+
+ When ``ctx`` is supplied, encoding routes through the session's
+ installed `PhysicalExtensionCodec`. Tables created in memory
+ from record batches are currently not supported.
- Convert an ExecutionPlan into protobuf bytes.
- Tables created in memory from record batches are currently not supported.
+
+ .. py:method:: to_proto() -> bytes
+
+ Deprecated alias for :meth:`to_bytes`.
@@ -180,13 +198,23 @@ Module Contents
- .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> LogicalPlan
+ .. py:method:: from_bytes(ctx: datafusion.context.SessionContext, data: bytes) -> LogicalPlan
:staticmethod:
- Create a LogicalPlan from protobuf bytes.
+ Create a LogicalPlan from serialized protobuf bytes.
+
+ Decoding routes through the session's installed
+ `LogicalExtensionCodec`. Tables created in memory from record
+ batches are currently not supported.
+
+
+
+ .. py:method:: from_proto(ctx: datafusion.context.SessionContext, data: bytes) -> LogicalPlan
+ :staticmethod:
+
- Tables created in memory from record batches are currently not supported.
+ Deprecated alias for :meth:`from_bytes`.
@@ -196,11 +224,22 @@ Module Contents
- .. py:method:: to_proto() -> bytes
+ .. py:method:: to_bytes(ctx: datafusion.context.SessionContext | None = None) -> bytes
+
+ Convert a LogicalPlan to serialized protobuf bytes.
+
+ When ``ctx`` is supplied, encoding routes through the session's
+ installed `LogicalExtensionCodec` so user FFI codecs (registered
+ via :py:meth:`SessionContext.with_logical_extension_codec`) see
+ the encode path. With ``ctx=None`` a default codec is used.
+ Tables created in memory from record batches are currently not
+ supported.
- Convert a LogicalPlan to protobuf bytes.
- Tables created in memory from record batches are currently not supported.
+
+ .. py:method:: to_proto() -> bytes
+
+ Deprecated alias for :meth:`to_bytes`.
diff --git a/autoapi/datafusion/context/index.html b/autoapi/datafusion/context/index.html
index 656c112c..5e4891c7 100644
--- a/autoapi/datafusion/context/index.html
+++ b/autoapi/datafusion/context/index.html
@@ -766,6 +766,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.context.SessionContext.__datafusion_physical_extension_codec__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ SessionContext.__datafusion_physical_extension_codec__()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.context.SessionContext.__datafusion_task_context_provider__">
<code class="docutils literal notranslate">
@@ -1333,6 +1342,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.context.SessionContext.with_physical_extension_codec">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ SessionContext.with_physical_extension_codec()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.context.SessionContext.ctx">
<code class="docutils literal notranslate">
@@ -1930,6 +1948,12 @@ a query against a CSV data source using the <code class="xref py py-class docuti
<dd><p>Access the PyCapsule FFI_LogicalExtensionCodec.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.context.SessionContext.__datafusion_physical_extension_codec__">
+<span class="sig-name descname"><span class="pre">__datafusion_physical_extension_codec__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">Any</span></span></span><a class="headerlink" href="#datafusion.context.SessionContext.__datafusion_physical_extension_codec__" title="Link to this definition">¶</a></dt>
+<dd><p>Access the PyCapsule FFI_PhysicalExtensionCodec.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.context.SessionContext.__datafusion_task_context_provider__">
<span class="sig-name descname"><span class="pre">__datafusion_task_context_provider__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">Any</span></span></span><a class="headerlink" href="#datafusion.context.SessionContext.__datafusion_task_context_provider__" title="Link to this definition">¶</a></dt>
@@ -2937,6 +2961,14 @@ after parsing.</p></li>
FFI interface.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.context.SessionContext.with_physical_extension_codec">
+<span class="sig-name descname"><span class="pre">with_physical_extension_codec</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">codec</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference inter [...]
+<dd><p>Create a new session context with the specified physical codec.</p>
+<p>This only supports codecs that have been implemented using the
+FFI interface.</p>
+</dd></dl>
+
<dl class="py attribute">
<dt class="sig sig-object py" id="datafusion.context.SessionContext.ctx">
<span class="sig-name descname"><span class="pre">ctx</span></span><a class="headerlink" href="#datafusion.context.SessionContext.ctx" title="Link to this definition">¶</a></dt>
diff --git a/autoapi/datafusion/expr/index.html b/autoapi/datafusion/expr/index.html
index 73a68c49..73d1f488 100644
--- a/autoapi/datafusion/expr/index.html
+++ b/autoapi/datafusion/expr/index.html
@@ -1038,6 +1038,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.expr.Expr.from_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Expr.from_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.expr.Expr.from_unixtime">
<code class="docutils literal notranslate">
@@ -1434,6 +1443,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.expr.Expr.to_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Expr.to_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.expr.Expr.to_hex">
<code class="docutils literal notranslate">
@@ -3415,6 +3433,14 @@ type of expression, an error will be generated when <code class="docutils litera
<dd><p>Returns the nearest integer less than or equal to the argument.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.expr.Expr.from_bytes">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span cl [...]
+<dd><p>Decode an expression from serialized protobuf bytes.</p>
+<p><code class="docutils literal notranslate"><span class="pre">ctx</span></code> provides the function registry for resolving UDF
+references and the logical codec for in-band Python payloads.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.expr.Expr.from_unixtime">
<span class="sig-name descname"><span class="pre">from_unixtime</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#datafusion.expr.Expr" title="datafusion.expr.Expr"><span class="pre">Expr</span></a></span></span><a class="headerlink" href="#datafusion.expr.Expr.from_unixtime" title="Link to this definition">¶</a></dt>
@@ -3738,6 +3764,15 @@ UTF8View literal, like in:
<dd><p>Returns the hyperbolic tangent of the argument.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.expr.Expr.to_bytes">
+<span class="sig-name descname"><span class="pre">to_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class="pre">datafusion.context.SessionContext</span></a><span class="w"> </span><span [...]
+<dd><p>Serialize this expression to protobuf bytes.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">ctx</span></code> is supplied, encoding routes through the session’s
+installed <code class="xref py py-class docutils literal notranslate"><span class="pre">LogicalExtensionCodec</span></code>. Without <code class="docutils literal notranslate"><span class="pre">ctx</span></code> a
+default codec is used.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.expr.Expr.to_hex">
<span class="sig-name descname"><span class="pre">to_hex</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#datafusion.expr.Expr" title="datafusion.expr.Expr"><span class="pre">Expr</span></a></span></span><a class="headerlink" href="#datafusion.expr.Expr.to_hex" title="Link to this definition">¶</a></dt>
diff --git a/autoapi/datafusion/index.html b/autoapi/datafusion/index.html
index 442ccf05..8492122c 100644
--- a/autoapi/datafusion/index.html
+++ b/autoapi/datafusion/index.html
@@ -904,6 +904,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ExecutionPlan.from_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ExecutionPlan.from_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.ExecutionPlan.from_proto">
<code class="docutils literal notranslate">
@@ -922,6 +931,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ExecutionPlan.to_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ExecutionPlan.to_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.ExecutionPlan.to_proto">
<code class="docutils literal notranslate">
@@ -1547,6 +1565,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Expr.from_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Expr.from_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.Expr.from_unixtime">
<code class="docutils literal notranslate">
@@ -1943,6 +1970,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Expr.to_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Expr.to_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.Expr.to_hex">
<code class="docutils literal notranslate">
@@ -2190,6 +2226,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.LogicalPlan.from_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ LogicalPlan.from_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.LogicalPlan.from_proto">
<code class="docutils literal notranslate">
@@ -2208,6 +2253,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.LogicalPlan.to_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ LogicalPlan.to_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.LogicalPlan.to_proto">
<code class="docutils literal notranslate">
@@ -3803,11 +3857,19 @@ DataFrame has been executed.</p>
<dd><p>Print an indented form of the physical plan.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.ExecutionPlan.from_bytes">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class [...]
+<dd><p>Create an ExecutionPlan from serialized protobuf bytes.</p>
+<p>Decoding routes through the session’s installed
+<cite>PhysicalExtensionCodec</cite>. Tables created in memory from record
+batches are currently not supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.ExecutionPlan.from_proto">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_proto</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class [...]
-<dd><p>Create an ExecutionPlan from protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.ExecutionPlan.from_bytes" title="datafusion.ExecutionPlan.from_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">from_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py method">
@@ -3820,11 +3882,19 @@ execution. Metric <em>values</em> (such as <code class="docutils literal notran
meaningful after the DataFrame has been executed.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.ExecutionPlan.to_bytes">
+<span class="sig-name descname"><span class="pre">to_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class="pre">datafusion.context.SessionContext</span></a><span class="w"> </span><span cl [...]
+<dd><p>Convert an ExecutionPlan into serialized protobuf bytes.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">ctx</span></code> is supplied, encoding routes through the session’s
+installed <cite>PhysicalExtensionCodec</cite>. Tables created in memory
+from record batches are currently not supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.ExecutionPlan.to_proto">
<span class="sig-name descname"><span class="pre">to_proto</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">bytes</span></span></span><a class="headerlink" href="#datafusion.ExecutionPlan.to_proto" title="Link to this definition">¶</a></dt>
-<dd><p>Convert an ExecutionPlan into protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.ExecutionPlan.to_bytes" title="datafusion.ExecutionPlan.to_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">to_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py attribute">
@@ -4298,6 +4368,14 @@ type of expression, an error will be generated when <code class="docutils litera
<dd><p>Returns the nearest integer less than or equal to the argument.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.Expr.from_bytes">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class [...]
+<dd><p>Decode an expression from serialized protobuf bytes.</p>
+<p><code class="docutils literal notranslate"><span class="pre">ctx</span></code> provides the function registry for resolving UDF
+references and the logical codec for in-band Python payloads.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.Expr.from_unixtime">
<span class="sig-name descname"><span class="pre">from_unixtime</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#datafusion.Expr" title="datafusion.Expr"><span class="pre">Expr</span></a></span></span><a class="headerlink" href="#datafusion.Expr.from_unixtime" title="Link to this definition">¶</a></dt>
@@ -4621,6 +4699,15 @@ UTF8View literal, like in:
<dd><p>Returns the hyperbolic tangent of the argument.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.Expr.to_bytes">
+<span class="sig-name descname"><span class="pre">to_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class="pre">datafusion.context.SessionContext</span></a><span class="w"> </span><span cl [...]
+<dd><p>Serialize this expression to protobuf bytes.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">ctx</span></code> is supplied, encoding routes through the session’s
+installed <code class="xref py py-class docutils literal notranslate"><span class="pre">LogicalExtensionCodec</span></code>. Without <code class="docutils literal notranslate"><span class="pre">ctx</span></code> a
+default codec is used.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.Expr.to_hex">
<span class="sig-name descname"><span class="pre">to_hex</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#datafusion.Expr" title="datafusion.Expr"><span class="pre">Expr</span></a></span></span><a class="headerlink" href="#datafusion.Expr.to_hex" title="Link to this definition">¶</a></dt>
@@ -4799,11 +4886,19 @@ using the `DOT</cite> language. This format can be visualized using software fro
<dd><p>Print an indented form of the schema for the logical plan.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.LogicalPlan.from_bytes">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class [...]
+<dd><p>Create a LogicalPlan from serialized protobuf bytes.</p>
+<p>Decoding routes through the session’s installed
+<cite>LogicalExtensionCodec</cite>. Tables created in memory from record
+batches are currently not supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.LogicalPlan.from_proto">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_proto</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class [...]
-<dd><p>Create a LogicalPlan from protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.LogicalPlan.from_bytes" title="datafusion.LogicalPlan.from_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">from_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py method">
@@ -4812,11 +4907,22 @@ using the `DOT</cite> language. This format can be visualized using software fro
<dd><p>Returns the list of inputs to the logical plan.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.LogicalPlan.to_bytes">
+<span class="sig-name descname"><span class="pre">to_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class="pre">datafusion.context.SessionContext</span></a><span class="w"> </span><span cl [...]
+<dd><p>Convert a LogicalPlan to serialized protobuf bytes.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">ctx</span></code> is supplied, encoding routes through the session’s
+installed <cite>LogicalExtensionCodec</cite> so user FFI codecs (registered
+via <code class="xref py py-meth docutils literal notranslate"><span class="pre">SessionContext.with_logical_extension_codec()</span></code>) see
+the encode path. With <code class="docutils literal notranslate"><span class="pre">ctx=None</span></code> a default codec is used.
+Tables created in memory from record batches are currently not
+supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.LogicalPlan.to_proto">
<span class="sig-name descname"><span class="pre">to_proto</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">bytes</span></span></span><a class="headerlink" href="#datafusion.LogicalPlan.to_proto" title="Link to this definition">¶</a></dt>
-<dd><p>Convert a LogicalPlan to protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.LogicalPlan.to_bytes" title="datafusion.LogicalPlan.to_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">to_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py method">
diff --git a/autoapi/datafusion/plan/index.html b/autoapi/datafusion/plan/index.html
index 54541ec7..320e8911 100644
--- a/autoapi/datafusion/plan/index.html
+++ b/autoapi/datafusion/plan/index.html
@@ -486,6 +486,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.plan.ExecutionPlan.from_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ExecutionPlan.from_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.plan.ExecutionPlan.from_proto">
<code class="docutils literal notranslate">
@@ -504,6 +513,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.plan.ExecutionPlan.to_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ExecutionPlan.to_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.plan.ExecutionPlan.to_proto">
<code class="docutils literal notranslate">
@@ -596,6 +614,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.plan.LogicalPlan.from_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ LogicalPlan.from_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.plan.LogicalPlan.from_proto">
<code class="docutils literal notranslate">
@@ -614,6 +641,15 @@
</code>
</a>
</li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.plan.LogicalPlan.to_bytes">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ LogicalPlan.to_bytes()
+ </span>
+ </code>
+ </a>
+ </li>
<li class="toc-h4 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.plan.LogicalPlan.to_proto">
<code class="docutils literal notranslate">
@@ -915,11 +951,19 @@ DataFrame has been executed.</p>
<dd><p>Print an indented form of the physical plan.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.plan.ExecutionPlan.from_bytes">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span cl [...]
+<dd><p>Create an ExecutionPlan from serialized protobuf bytes.</p>
+<p>Decoding routes through the session’s installed
+<cite>PhysicalExtensionCodec</cite>. Tables created in memory from record
+batches are currently not supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.plan.ExecutionPlan.from_proto">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_proto</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span cl [...]
-<dd><p>Create an ExecutionPlan from protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.plan.ExecutionPlan.from_bytes" title="datafusion.plan.ExecutionPlan.from_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">from_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py method">
@@ -932,11 +976,19 @@ execution. Metric <em>values</em> (such as <code class="docutils literal notran
meaningful after the DataFrame has been executed.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.plan.ExecutionPlan.to_bytes">
+<span class="sig-name descname"><span class="pre">to_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class="pre">datafusion.context.SessionContext</span></a><span class="w"> </span><span [...]
+<dd><p>Convert an ExecutionPlan into serialized protobuf bytes.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">ctx</span></code> is supplied, encoding routes through the session’s
+installed <cite>PhysicalExtensionCodec</cite>. Tables created in memory
+from record batches are currently not supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.plan.ExecutionPlan.to_proto">
<span class="sig-name descname"><span class="pre">to_proto</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">bytes</span></span></span><a class="headerlink" href="#datafusion.plan.ExecutionPlan.to_proto" title="Link to this definition">¶</a></dt>
-<dd><p>Convert an ExecutionPlan into protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.plan.ExecutionPlan.to_bytes" title="datafusion.plan.ExecutionPlan.to_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">to_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py attribute">
@@ -1003,11 +1055,19 @@ using the `DOT</cite> language. This format can be visualized using software fro
<dd><p>Print an indented form of the schema for the logical plan.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.plan.LogicalPlan.from_bytes">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span cl [...]
+<dd><p>Create a LogicalPlan from serialized protobuf bytes.</p>
+<p>Decoding routes through the session’s installed
+<cite>LogicalExtensionCodec</cite>. Tables created in memory from record
+batches are currently not supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.plan.LogicalPlan.from_proto">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_proto</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span cl [...]
-<dd><p>Create a LogicalPlan from protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.plan.LogicalPlan.from_bytes" title="datafusion.plan.LogicalPlan.from_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">from_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py method">
@@ -1016,11 +1076,22 @@ using the `DOT</cite> language. This format can be visualized using software fro
<dd><p>Returns the list of inputs to the logical plan.</p>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.plan.LogicalPlan.to_bytes">
+<span class="sig-name descname"><span class="pre">to_bytes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../context/index.html#datafusion.context.SessionContext" title="datafusion.context.SessionContext"><span class="pre">datafusion.context.SessionContext</span></a><span class="w"> </span><span [...]
+<dd><p>Convert a LogicalPlan to serialized protobuf bytes.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">ctx</span></code> is supplied, encoding routes through the session’s
+installed <cite>LogicalExtensionCodec</cite> so user FFI codecs (registered
+via <code class="xref py py-meth docutils literal notranslate"><span class="pre">SessionContext.with_logical_extension_codec()</span></code>) see
+the encode path. With <code class="docutils literal notranslate"><span class="pre">ctx=None</span></code> a default codec is used.
+Tables created in memory from record batches are currently not
+supported.</p>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="datafusion.plan.LogicalPlan.to_proto">
<span class="sig-name descname"><span class="pre">to_proto</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">bytes</span></span></span><a class="headerlink" href="#datafusion.plan.LogicalPlan.to_proto" title="Link to this definition">¶</a></dt>
-<dd><p>Convert a LogicalPlan to protobuf bytes.</p>
-<p>Tables created in memory from record batches are currently not supported.</p>
+<dd><p>Deprecated alias for <a class="reference internal" href="#datafusion.plan.LogicalPlan.to_bytes" title="datafusion.plan.LogicalPlan.to_bytes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">to_bytes()</span></code></a>.</p>
</dd></dl>
<dl class="py method">
diff --git a/genindex.html b/genindex.html
index c342c80a..afd033ac 100644
--- a/genindex.html
+++ b/genindex.html
@@ -510,6 +510,8 @@
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDFExportable.__datafusion_aggregate_udf__">__datafusion_aggregate_udf__() (datafusion.user_defined.AggregateUDFExportable method)</a>
</li>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.SessionContext.__datafusion_logical_extension_codec__">__datafusion_logical_extension_codec__() (datafusion.context.SessionContext method)</a>
+</li>
+ <li><a href="autoapi/datafusion/context/index.html#datafusion.context.SessionContext.__datafusion_physical_extension_codec__">__datafusion_physical_extension_codec__() (datafusion.context.SessionContext method)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDFExportable.__datafusion_scalar_udf__">__datafusion_scalar_udf__() (datafusion.user_defined.ScalarUDFExportable method)</a>
</li>
@@ -2045,10 +2047,10 @@
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.floor">(in module datafusion.functions)</a>
</li>
</ul></li>
- </ul></td>
- <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter.format_html">format_html() (datafusion.dataframe_formatter.DataFrameHtmlFormatter method)</a>
</li>
+ </ul></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter.format_str">format_str() (datafusion.dataframe_formatter.DataFrameHtmlFormatter method)</a>
</li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.FormatterManager">FormatterManager (class in datafusion.dataframe_formatter)</a>
@@ -2057,6 +2059,20 @@
</li>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.SessionContext.from_arrow">from_arrow() (datafusion.context.SessionContext method)</a>
</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ExecutionPlan.from_bytes">from_bytes() (datafusion.ExecutionPlan static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Expr.from_bytes">(datafusion.Expr static method)</a>
+</li>
+ <li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Expr.from_bytes">(datafusion.expr.Expr static method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.LogicalPlan.from_bytes">(datafusion.LogicalPlan static method)</a>
+</li>
+ <li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.ExecutionPlan.from_bytes">(datafusion.plan.ExecutionPlan static method)</a>
+</li>
+ <li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.LogicalPlan.from_bytes">(datafusion.plan.LogicalPlan static method)</a>
+</li>
+ </ul></li>
<li><a href="autoapi/datafusion/catalog/index.html#datafusion.catalog.Table.from_dataset">from_dataset() (datafusion.catalog.Table static method)</a>
<ul>
@@ -3584,6 +3600,20 @@
</ul></li>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.to_arrow_table">to_arrow_table() (datafusion.dataframe.DataFrame method)</a>
</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ExecutionPlan.to_bytes">to_bytes() (datafusion.ExecutionPlan method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Expr.to_bytes">(datafusion.Expr method)</a>
+</li>
+ <li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Expr.to_bytes">(datafusion.expr.Expr method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.LogicalPlan.to_bytes">(datafusion.LogicalPlan method)</a>
+</li>
+ <li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.ExecutionPlan.to_bytes">(datafusion.plan.ExecutionPlan method)</a>
+</li>
+ <li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.LogicalPlan.to_bytes">(datafusion.plan.LogicalPlan method)</a>
+</li>
+ </ul></li>
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.to_char">to_char() (in module datafusion.functions)</a>
</li>
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.to_date">to_date() (in module datafusion.functions)</a>
@@ -3606,6 +3636,8 @@
</li>
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.to_local_time">to_local_time() (in module datafusion.functions)</a>
</li>
+ </ul></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.to_pandas">to_pandas() (datafusion.dataframe.DataFrame method)</a>
</li>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.to_polars">to_polars() (datafusion.dataframe.DataFrame method)</a>
@@ -3620,8 +3652,6 @@
<li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.LogicalPlan.to_proto">(datafusion.plan.LogicalPlan method)</a>
</li>
</ul></li>
- </ul></td>
- <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/record_batch/index.html#datafusion.record_batch.RecordBatch.to_pyarrow">to_pyarrow() (datafusion.record_batch.RecordBatch method)</a>
<ul>
@@ -3964,14 +3994,14 @@
<li><a href="autoapi/datafusion/options/index.html#datafusion.options.CsvReadOptions.with_file_sort_order">(datafusion.options.CsvReadOptions method)</a>
</li>
</ul></li>
- </ul></td>
- <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.RuntimeEnvBuilder.with_greedy_memory_pool">with_greedy_memory_pool() (datafusion.context.RuntimeEnvBuilder method)</a>
<ul>
<li><a href="autoapi/datafusion/index.html#datafusion.RuntimeEnvBuilder.with_greedy_memory_pool">(datafusion.RuntimeEnvBuilder method)</a>
</li>
</ul></li>
+ </ul></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/index.html#datafusion.CsvReadOptions.with_has_header">with_has_header() (datafusion.CsvReadOptions method)</a>
<ul>
@@ -4004,6 +4034,8 @@
<li><a href="autoapi/datafusion/index.html#datafusion.SessionConfig.with_parquet_pruning">(datafusion.SessionConfig method)</a>
</li>
</ul></li>
+ <li><a href="autoapi/datafusion/context/index.html#datafusion.context.SessionContext.with_physical_extension_codec">with_physical_extension_codec() (datafusion.context.SessionContext method)</a>
+</li>
<li><a href="autoapi/datafusion/unparser/index.html#datafusion.unparser.Unparser.with_pretty">with_pretty() (datafusion.unparser.Unparser method)</a>
</li>
<li><a href="autoapi/datafusion/index.html#datafusion.CsvReadOptions.with_quote">with_quote() (datafusion.CsvReadOptions method)</a>
diff --git a/objects.inv b/objects.inv
index f5d925fd..ebaa9029 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/searchindex.js b/searchindex.js
index f2b6dd74..8bc01188 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"API Reference": [[18, null], [36, "api-reference"]], "Additional Resources": [[38, "additional-resources"]], "Aggregate Functions": [[24, "aggregate-functions"], [31, "aggregate-functions"], [33, "aggregate-functions"]], "Aggregated vs Per-Partition Metrics": [[36, "aggregated-vs-per-partition-metrics"]], "Aggregation": [[24, null]], "Alternative Approach": [[19, "alternative-approach"]], "Apache Iceberg": [[35, "apache-iceberg"]], "Arrays": [[26, "arrays" [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"API Reference": [[18, null], [36, "api-reference"]], "Additional Resources": [[38, "additional-resources"]], "Aggregate Functions": [[24, "aggregate-functions"], [31, "aggregate-functions"], [33, "aggregate-functions"]], "Aggregated vs Per-Partition Metrics": [[36, "aggregated-vs-per-partition-metrics"]], "Aggregation": [[24, null]], "Alternative Approach": [[19, "alternative-approach"]], "Apache Iceberg": [[35, "apache-iceberg"]], "Arrays": [[26, "arrays" [...]
\ No newline at end of file
diff --git a/user-guide/common-operations/aggregations.html b/user-guide/common-operations/aggregations.html
index 8943616e..1bc16c02 100644
--- a/user-guide/common-operations/aggregations.html
+++ b/user-guide/common-operations/aggregations.html
@@ -652,15 +652,15 @@ Pokemon set. Since there will be many entries of <code class="docutils literal n
<span class="o">+----------+--------------------------------------------------+</span>
<span class="o">|</span> <span class="n">Type</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">Type</span> <span class="mi">2</span> <span class="n">List</span> <span class="o">|</span>
<span class="o">+----------+--------------------------------------------------+</span>
-<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Steel</span><span class="p">,</span> <span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Ground</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Fairy</span> <span class="o">|</span> <span class="p">[]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Fairy</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="p">,</span> <span class="n">Fairy</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Dragon</span><span class="p">,</span> <span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fighting</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Dragon</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ice</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ground</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Rock</span><span class="p">]</span> <span class="o">|</span>
<span class="o">+----------+--------------------------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
@@ -676,15 +676,15 @@ entries entirely removed. The second is we can use the <code class="docutils lit
<span class="o">+----------+------------------------------------------------+</span>
<span class="o">|</span> <span class="n">Type</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">Type</span> <span class="mi">2</span> <span class="n">List</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
-<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Ground</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Steel</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Grass</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fairy</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Dragon</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Rock</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Ground</span><span class="p">,</span> <span class="n">Water</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ice</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">,</span> <span class="n">Dark</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Rock</span> <span class="o">|</span> <span class="p">[</span><span class="n">Water</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Ground</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ghost</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
@@ -695,15 +695,15 @@ entries entirely removed. The second is we can use the <code class="docutils lit
<span class="o">+----------+------------------------------------------------+</span>
<span class="o">|</span> <span class="n">Type</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">Type</span> <span class="mi">2</span> <span class="n">List</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
-<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Grass</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Fairy</span> <span class="o">|</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Fairy</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fairy</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Dragon</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ice</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Dragon</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ground</span> <span class="o">|</span> <span class="p">[</span><span class="n">Rock</span><span class="p">]</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
diff --git a/user-guide/common-operations/basic-info.html b/user-guide/common-operations/basic-info.html
index 80ef273f..d7f1e3ca 100644
--- a/user-guide/common-operations/basic-info.html
+++ b/user-guide/common-operations/basic-info.html
@@ -461,11 +461,11 @@
<span class="o">+-----+---------+--------+--------+</span>
<span class="o">|</span> <span class="n">nrs</span> <span class="o">|</span> <span class="n">names</span> <span class="o">|</span> <span class="n">random</span> <span class="o">|</span> <span class="n">groups</span> <span class="o">|</span>
<span class="o">+-----+---------+--------+--------+</span>
-<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">532</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">983</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">3</span> <span class="o">|</span> <span class="n">java</span> <span class="o">|</span> <span class="mi">222</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">4</span> <span class="o">|</span> <span class="n">haskell</span> <span class="o">|</span> <span class="mi">485</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mi">180</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">22</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">500</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">3</span> <span class="o">|</span> <span class="n">java</span> <span class="o">|</span> <span class="mi">357</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">4</span> <span class="o">|</span> <span class="n">haskell</span> <span class="o">|</span> <span class="mi">756</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mi">374</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
<span class="o">+-----+---------+--------+--------+</span>
</pre></div>
</div>
@@ -476,8 +476,8 @@
<span class="o">+-----+--------+--------+--------+</span>
<span class="o">|</span> <span class="n">nrs</span> <span class="o">|</span> <span class="n">names</span> <span class="o">|</span> <span class="n">random</span> <span class="o">|</span> <span class="n">groups</span> <span class="o">|</span>
<span class="o">+-----+--------+--------+--------+</span>
-<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">532</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">983</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">22</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">500</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
<span class="o">+-----+--------+--------+--------+</span>
</pre></div>
</div>
@@ -495,28 +495,28 @@ passing them to an Arrow table, and then converting them to a pandas DataFrame.<
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="n">In</span> <span class="p">[</span><span class="mi">8</span><span class="p">]:</span> <span class="n">df</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">8</span><span class="p">]:</span>
<span class="n">nrs</span> <span class="n">names</span> <span class="n">random</span> <span class="n">groups</span>
-<span class="mi">0</span> <span class="mi">1</span> <span class="n">python</span> <span class="mi">532</span> <span class="n">A</span>
-<span class="mi">1</span> <span class="mi">2</span> <span class="n">ruby</span> <span class="mi">983</span> <span class="n">A</span>
-<span class="mi">2</span> <span class="mi">3</span> <span class="n">java</span> <span class="mi">222</span> <span class="n">B</span>
-<span class="mi">3</span> <span class="mi">4</span> <span class="n">haskell</span> <span class="mi">485</span> <span class="n">C</span>
-<span class="mi">4</span> <span class="mi">5</span> <span class="n">go</span> <span class="mi">180</span> <span class="n">B</span>
+<span class="mi">0</span> <span class="mi">1</span> <span class="n">python</span> <span class="mi">22</span> <span class="n">A</span>
+<span class="mi">1</span> <span class="mi">2</span> <span class="n">ruby</span> <span class="mi">500</span> <span class="n">A</span>
+<span class="mi">2</span> <span class="mi">3</span> <span class="n">java</span> <span class="mi">357</span> <span class="n">B</span>
+<span class="mi">3</span> <span class="mi">4</span> <span class="n">haskell</span> <span class="mi">756</span> <span class="n">C</span>
+<span class="mi">4</span> <span class="mi">5</span> <span class="n">go</span> <span class="mi">374</span> <span class="n">B</span>
</pre></div>
</div>
<p><a class="reference internal" href="../../autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.describe" title="datafusion.dataframe.DataFrame.describe"><code class="xref py py-func docutils literal notranslate"><span class="pre">describe()</span></code></a> shows a quick statistic summary of your data:</p>
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="n">In</span> <span class="p">[</span><span class="mi">9</span><span class="p">]:</span> <span class="n">df</span><span class="o">.</span><span class="n">describe</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">9</span><span class="p">]:</span>
<span class="n">DataFrame</span><span class="p">()</span>
-<span class="o">+------------+--------------------+-------+--------------------+--------+</span>
-<span class="o">|</span> <span class="n">describe</span> <span class="o">|</span> <span class="n">nrs</span> <span class="o">|</span> <span class="n">names</span> <span class="o">|</span> <span class="n">random</span> <span class="o">|</span> <span class="n">groups</span> <span class="o">|</span>
-<span class="o">+------------+--------------------+-------+--------------------+--------+</span>
-<span class="o">|</span> <span class="n">count</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="mi">5</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">null_count</span> <span class="o">|</span> <span class="mf">0.0</span> <span class="o">|</span> <span class="mi">0</span> <span class="o">|</span> <span class="mf">0.0</span> <span class="o">|</span> <span class="mi">0</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">mean</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">480.4</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">std</span> <span class="o">|</span> <span class="mf">1.5811388300841898</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">321.05342234587687</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
-<span class="o">|</span> <span class="nb">min</span> <span class="o">|</span> <span class="mf">1.0</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mf">180.0</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="nb">max</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mf">983.0</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">median</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">485.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
-<span class="o">+------------+--------------------+-------+--------------------+--------+</span>
+<span class="o">+------------+--------------------+-------+-------------------+--------+</span>
+<span class="o">|</span> <span class="n">describe</span> <span class="o">|</span> <span class="n">nrs</span> <span class="o">|</span> <span class="n">names</span> <span class="o">|</span> <span class="n">random</span> <span class="o">|</span> <span class="n">groups</span> <span class="o">|</span>
+<span class="o">+------------+--------------------+-------+-------------------+--------+</span>
+<span class="o">|</span> <span class="n">count</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="mi">5</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">null_count</span> <span class="o">|</span> <span class="mf">0.0</span> <span class="o">|</span> <span class="mi">0</span> <span class="o">|</span> <span class="mf">0.0</span> <span class="o">|</span> <span class="mi">0</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">mean</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">401.8</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">std</span> <span class="o">|</span> <span class="mf">1.5811388300841898</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">265.5789901328793</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
+<span class="o">|</span> <span class="nb">min</span> <span class="o">|</span> <span class="mf">1.0</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mf">22.0</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="nb">max</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mf">756.0</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">median</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">374.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
+<span class="o">+------------+--------------------+-------+-------------------+--------+</span>
</pre></div>
</div>
</section>
diff --git a/user-guide/common-operations/functions.html b/user-guide/common-operations/functions.html
index a39f9380..1b790d15 100644
--- a/user-guide/common-operations/functions.html
+++ b/user-guide/common-operations/functions.html
@@ -571,16 +571,16 @@ In here we will cover some of the more popular use cases. If you want to view al
<span class="o">+-------------------------------+</span>
<span class="o">|</span> <span class="n">now</span><span class="p">()</span> <span class="o">|</span>
<span class="o">+-------------------------------+</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">13</span><span class="n">T16</span><span class="p">:</span><span class="mi">22</span><span class="p">:</span><span class="mf">10.354563027</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">05</span><span class="o">-</span><span class="mi">15</span><span class="n">T13</span><span class="p">:</span><span class="mi">28</span><span class="p">:</span><span class="mf">54.167865203</span> <span class="o">|</span>
<span class="o">+-------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
</pre></div>
diff --git a/user-guide/common-operations/udf-and-udfa.html b/user-guide/common-operations/udf-and-udfa.html
index 830e02d3..d41ec481 100644
--- a/user-guide/common-operations/udf-and-udfa.html
+++ b/user-guide/common-operations/udf-and-udfa.html
@@ -644,7 +644,7 @@ over column references and literals, so the optimizer can analyze it:</p>
<span class="n">In</span> <span class="p">[</span><span class="mi">29</span><span class="p">]:</span> <span class="nb">print</span><span class="p">(</span><span class="n">native_filtered</span><span class="o">.</span><span class="n">execution_plan</span><span class="p">()</span><span class="o">.</span><span class="n">display_indent</span><span class="p">())</span>
<span class="n">FilterExec</span><span class="p">:</span> <span class="n">brand</span><span class="o">@</span><span class="mi">1</span> <span class="o">=</span> <span class="n">A</span> <span class="n">AND</span> <span class="n">qty</span><span class="o">@</span><span class="mi">2</span> <span class="o">>=</span> <span class="mi">150</span>
<span class="n">RepartitionExec</span><span class="p">:</span> <span class="n">partitioning</span><span class="o">=</span><span class="n">RoundRobinBatch</span><span class="p">(</span><span class="mi">4</span><span class="p">),</span> <span class="n">input_partitions</span><span class="o">=</span><span class="mi">1</span>
- <span class="n">DataSourceExec</span><span class="p">:</span> <span class="n">file_groups</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span> <span class="n">group</span><span class="p">:</span> <span class="p">[[</span><span class="n">tmp</span><span class="o">/</span><span class="n">tmplel6lyzi</span><span class="o">/</span><span class="n">items</span><span class="o">.</span><span class="n">parquet</span><span class="p">]]},</span> <span class="n">projec [...]
+ <span class="n">DataSourceExec</span><span class="p">:</span> <span class="n">file_groups</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span> <span class="n">group</span><span class="p">:</span> <span class="p">[[</span><span class="n">tmp</span><span class="o">/</span><span class="n">tmp858wzw3d</span><span class="o">/</span><span class="n">items</span><span class="o">.</span><span class="n">parquet</span><span class="p">]]},</span> <span class="n">projec [...]
</pre></div>
</div>
<p>Notice the <code class="docutils literal notranslate"><span class="pre">DataSourceExec</span></code> line. It carries three annotations the
@@ -677,7 +677,7 @@ bloom filter or dictionary is available to skip pages.</p></li>
<span class="n">In</span> <span class="p">[</span><span class="mi">33</span><span class="p">]:</span> <span class="nb">print</span><span class="p">(</span><span class="n">udf_filtered</span><span class="o">.</span><span class="n">execution_plan</span><span class="p">()</span><span class="o">.</span><span class="n">display_indent</span><span class="p">())</span>
<span class="n">FilterExec</span><span class="p">:</span> <span class="n">brand_qty_filter</span><span class="p">(</span><span class="n">CAST</span><span class="p">(</span><span class="n">brand</span><span class="o">@</span><span class="mi">1</span> <span class="n">AS</span> <span class="n">Utf8</span><span class="p">),</span> <span class="n">qty</span><span class="o">@</span><span class="mi">2</span><span class="p">)</span>
<span class="n">RepartitionExec</span><span class="p">:</span> <span class="n">partitioning</span><span class="o">=</span><span class="n">RoundRobinBatch</span><span class="p">(</span><span class="mi">4</span><span class="p">),</span> <span class="n">input_partitions</span><span class="o">=</span><span class="mi">1</span>
- <span class="n">DataSourceExec</span><span class="p">:</span> <span class="n">file_groups</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span> <span class="n">group</span><span class="p">:</span> <span class="p">[[</span><span class="n">tmp</span><span class="o">/</span><span class="n">tmplel6lyzi</span><span class="o">/</span><span class="n">items</span><span class="o">.</span><span class="n">parquet</span><span class="p">]]},</span> <span class="n">projec [...]
+ <span class="n">DataSourceExec</span><span class="p">:</span> <span class="n">file_groups</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span> <span class="n">group</span><span class="p">:</span> <span class="p">[[</span><span class="n">tmp</span><span class="o">/</span><span class="n">tmp858wzw3d</span><span class="o">/</span><span class="n">items</span><span class="o">.</span><span class="n">parquet</span><span class="p">]]},</span> <span class="n">projec [...]
</pre></div>
</div>
<p>The <code class="docutils literal notranslate"><span class="pre">DataSourceExec</span></code> now carries only <code class="docutils literal notranslate"><span class="pre">predicate=brand_qty_filter(...)</span></code>.
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datafusion.apache.org
For additional commands, e-mail: commits-help@datafusion.apache.org