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-ballista.git
The following commit(s) were added to refs/heads/asf-site by this push:
new ade6c2ce4 Publish built docs triggered by
fd5aa65d6e332d532cd8220b524bac2daeca15f9
ade6c2ce4 is described below
commit ade6c2ce463dfcbb7b69d0ade767562e4d35db44
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Sat Jul 18 14:54:26 2026 +0000
Publish built docs triggered by fd5aa65d6e332d532cd8220b524bac2daeca15f9
---
_sources/user-guide/tuning-guide.md.txt | 11 ++++++++---
searchindex.js | 2 +-
user-guide/tuning-guide.html | 13 +++++++++++++
3 files changed, 22 insertions(+), 4 deletions(-)
diff --git a/_sources/user-guide/tuning-guide.md.txt
b/_sources/user-guide/tuning-guide.md.txt
index c8845ba22..c2daa312b 100644
--- a/_sources/user-guide/tuning-guide.md.txt
+++ b/_sources/user-guide/tuning-guide.md.txt
@@ -196,9 +196,11 @@ Adaptive Query Planning is EXPERIMENTAL, should be used
for testing purposes onl
### Configuration
-| key | type | default | description
|
-| --------------------------------- | ------- | ------- |
------------------------------------------- |
-| ballista.planner.adaptive.enabled | Boolean | false | Enables the adaptive
planner. Experimental. |
+| key | type | default |
description
|
+| ------------------------------------------------- | ------- | -------- |
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
+| ballista.planner.adaptive.enabled | Boolean | false |
Enables the adaptive planner. Experimental.
|
+| ballista.optimizer.broadcast_join_threshold_bytes | UInt64 | 10485760 |
Byte-size threshold below which a hash join's smaller side is broadcast
(`CollectLeft`). Governs both the static planner and AQE. Set to 0 to disable
broadcast joins. |
+| ballista.optimizer.broadcast_join_threshold_rows | UInt64 | 1000000 |
Row-count fallback threshold used when byte-size statistics are unavailable.
Applies to AQE. Set to 0 to disable promotion via the row-count path.
|
### What AQE does today
@@ -209,6 +211,9 @@ implemented:
- **Join reordering.** Uses runtime row counts from completed stages so the
smaller side drives the join.
+- **Broadcast join selection.** When a join input's runtime size falls under
+ `ballista.optimizer.broadcast_join_threshold_bytes` (or the row-count
+ fallback), the smaller side is broadcast (`CollectLeft`) instead of shuffled.
- **Empty stage elimination.** When a completed stage produces zero rows, its
downstream exchange is replaced with an empty execution node, and emptiness
is propagated up the plan so downstream stages are skipped entirely.
diff --git a/searchindex.js b/searchindex.js
index 1a6ade22b..78d8adb32 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"AQE join behavior
(opt-in)":[[27,"aqe-join-behavior-opt-in"]],"Adaptive Query Execution
(AQE)":[[21,"adaptive-query-execution-aqe"]],"Adaptive Query Execution
(Experimental)":[[50,"adaptive-query-execution-experimental"]],"Adding a
persona":[[25,"adding-a-persona"]],"Aggregate
Functions":[[49,"aggregate-functions"]],"Apache DataFusion
Ballista":[[26,null]],"Apache DataFusion Ballista 0.10.0
Changelog":[[0,null]],"Apache DataFusion Ballista 0.11.0 Changelog" [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"AQE join behavior
(opt-in)":[[27,"aqe-join-behavior-opt-in"]],"Adaptive Query Execution
(AQE)":[[21,"adaptive-query-execution-aqe"]],"Adaptive Query Execution
(Experimental)":[[50,"adaptive-query-execution-experimental"]],"Adding a
persona":[[25,"adding-a-persona"]],"Aggregate
Functions":[[49,"aggregate-functions"]],"Apache DataFusion
Ballista":[[26,null]],"Apache DataFusion Ballista 0.10.0
Changelog":[[0,null]],"Apache DataFusion Ballista 0.11.0 Changelog" [...]
\ No newline at end of file
diff --git a/user-guide/tuning-guide.html b/user-guide/tuning-guide.html
index d98ced482..4ae2b2907 100644
--- a/user-guide/tuning-guide.html
+++ b/user-guide/tuning-guide.html
@@ -585,6 +585,16 @@ clear that AQE was used:</p>
<td><p>false</p></td>
<td><p>Enables the adaptive planner. Experimental.</p></td>
</tr>
+<tr
class="row-odd"><td><p>ballista.optimizer.broadcast_join_threshold_bytes</p></td>
+<td><p>UInt64</p></td>
+<td><p>10485760</p></td>
+<td><p>Byte-size threshold below which a hash join’s smaller side is broadcast
(<code class="docutils literal notranslate"><span
class="pre">CollectLeft</span></code>). Governs both the static planner and
AQE. Set to 0 to disable broadcast joins.</p></td>
+</tr>
+<tr
class="row-even"><td><p>ballista.optimizer.broadcast_join_threshold_rows</p></td>
+<td><p>UInt64</p></td>
+<td><p>1000000</p></td>
+<td><p>Row-count fallback threshold used when byte-size statistics are
unavailable. Applies to AQE. Set to 0 to disable promotion via the row-count
path.</p></td>
+</tr>
</tbody>
</table>
</div>
@@ -598,6 +608,9 @@ implemented:</p>
<ul class="simple">
<li><p><strong>Join reordering.</strong> Uses runtime row counts from
completed stages so the
smaller side drives the join.</p></li>
+<li><p><strong>Broadcast join selection.</strong> When a join input’s runtime
size falls under
+<code class="docutils literal notranslate"><span
class="pre">ballista.optimizer.broadcast_join_threshold_bytes</span></code> (or
the row-count
+fallback), the smaller side is broadcast (<code class="docutils literal
notranslate"><span class="pre">CollectLeft</span></code>) instead of
shuffled.</p></li>
<li><p><strong>Empty stage elimination.</strong> When a completed stage
produces zero rows, its
downstream exchange is replaced with an empty execution node, and emptiness
is propagated up the plan so downstream stages are skipped entirely.</p></li>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]