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-comet.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 8aeeff73db Publish built docs triggered by
2b35fb8eec0fccff56f705073de572b34f0fe3dc
8aeeff73db is described below
commit 8aeeff73db323e7e459b75ea21e931d5886c6b05
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Aug 20 17:28:36 2026 +0000
Publish built docs triggered by 2b35fb8eec0fccff56f705073de572b34f0fe3dc
---
_sources/contributor-guide/optimizing_expressions.md.txt | 2 +-
contributor-guide/optimizing_expressions.html | 2 +-
searchindex.js | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/_sources/contributor-guide/optimizing_expressions.md.txt
b/_sources/contributor-guide/optimizing_expressions.md.txt
index ecdb8a7263..4b11dd0487 100644
--- a/_sources/contributor-guide/optimizing_expressions.md.txt
+++ b/_sources/contributor-guide/optimizing_expressions.md.txt
@@ -149,7 +149,7 @@ for the lightest one that fits.
| **Preallocate builders to known size** |
Repeated buffer growth/reallocation
| `spark_unhex`: preallocate `BinaryBuilder` to the known
output length
|
| **Compile-time lookup tables** |
Per-element range matches / branching
| `spark_unhex`: 256-entry hex table instead of per-digit
range match
|
| **Cache compiled regex** (thread-local, keyed by the constant arg) |
`Regex::new()` per row
| `parse_url` QUERY-with-key (50x): the key is constant
across a batch
|
-| **Read from the offset buffer directly** |
`list_array.value(i)` allocating a sliced `ArrayRef` per row
| `spark_size` Map path and scalar path: `value_length` /
offsets instead of materializing a sliced array
|
+| **Read from the offset buffer directly** |
`list_array.value(i)` allocating a sliced `ArrayRef` per row
| `spark_size` scalar path: `value_length` instead of
materializing a sliced array; Map array path (~6-13x):
`MapArray::offsets().windows(2)` diff, `length` kernel doesn't support Map |
| **Reuse Arrow `length` kernel + cheap null rewrite** | Per-row
`value_length` / builder loop, or `zip` via `MutableArrayData`
| `spark_size` (~12x on no-null List): `length` for
List/LargeList/FixedSizeList, then `into_parts` + `set_indices` to patch null
slots to `-1` |
| **Typed scans over flat values buffers + hash probe** | A
per-element Arrow `eq`/compute kernel that allocates per call
| `spark_arrays_overlap` (up to 18x): scan buffers
directly, hash probe for large lists
|
| **ASCII / byte-offset fast path** |
`chars().count()` and per-char UTF-8 decoding
| `substring` (up to 10x), `spark_lpad` (2x): slice by
byte offset when input is ASCII
|
diff --git a/contributor-guide/optimizing_expressions.html
b/contributor-guide/optimizing_expressions.html
index 3bca1b97d7..70836e10d5 100644
--- a/contributor-guide/optimizing_expressions.html
+++ b/contributor-guide/optimizing_expressions.html
@@ -701,7 +701,7 @@ for the lightest one that fits.</p>
</tr>
<tr class="row-odd"><td><p><strong>Read from the offset buffer
directly</strong></p></td>
<td><p><code class="docutils literal notranslate"><span
class="pre">list_array.value(i)</span></code> allocating a sliced <code
class="docutils literal notranslate"><span class="pre">ArrayRef</span></code>
per row</p></td>
-<td><p><code class="docutils literal notranslate"><span
class="pre">spark_size</span></code> Map path and scalar path: <code
class="docutils literal notranslate"><span
class="pre">value_length</span></code> / offsets instead of materializing a
sliced array</p></td>
+<td><p><code class="docutils literal notranslate"><span
class="pre">spark_size</span></code> scalar path: <code class="docutils literal
notranslate"><span class="pre">value_length</span></code> instead of
materializing a sliced array; Map array path (~6-13x): <code class="docutils
literal notranslate"><span
class="pre">MapArray::offsets().windows(2)</span></code> diff, <code
class="docutils literal notranslate"><span class="pre">length</span></code>
kernel doesn’t support Map</p></td>
</tr>
<tr class="row-even"><td><p><strong>Reuse Arrow <code class="docutils literal
notranslate"><span class="pre">length</span></code> kernel + cheap null
rewrite</strong></p></td>
<td><p>Per-row <code class="docutils literal notranslate"><span
class="pre">value_length</span></code> / builder loop, or <code class="docutils
literal notranslate"><span class="pre">zip</span></code> via <code
class="docutils literal notranslate"><span
class="pre">MutableArrayData</span></code></p></td>
diff --git a/searchindex.js b/searchindex.js
index 76442c101b..638171baaa 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"!": [[55, "id1"]], "%": [[53, "id1"]], "&":
[[43, "id1"]], "*": [[53, "id2"]], "+": [[53, "id3"]], "-": [[53, "id4"]], "/":
[[53, "id5"]], "1. Format Your Code": [[40, "format-your-code"]], "1. Install
Comet": [[61, "install-comet"], [71, "install-comet"]], "1. Native Operators
(nativeExecs map)": [[28, "native-operators-nativeexecs-map"]], "2. Build and
Verify": [[40, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[61,
"clone-iceberg-and-apply- [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"!": [[55, "id1"]], "%": [[53, "id1"]], "&":
[[43, "id1"]], "*": [[53, "id2"]], "+": [[53, "id3"]], "-": [[53, "id4"]], "/":
[[53, "id5"]], "1. Format Your Code": [[40, "format-your-code"]], "1. Install
Comet": [[61, "install-comet"], [71, "install-comet"]], "1. Native Operators
(nativeExecs map)": [[28, "native-operators-nativeexecs-map"]], "2. Build and
Verify": [[40, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[61,
"clone-iceberg-and-apply- [...]
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]