This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion-comet.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new a6a1a97c Publish built docs triggered by 
f75aeefab58dc7e14cb70742b9d7bb656b727dbd
a6a1a97c is described below

commit a6a1a97c8c644bb682191c825f41312b6117a030
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Fri Jun 7 21:15:56 2024 +0000

    Publish built docs triggered by f75aeefab58dc7e14cb70742b9d7bb656b727dbd
---
 _sources/user-guide/expressions.md.txt | 267 ++++++++-----
 _sources/user-guide/operators.md.txt   |  27 +-
 searchindex.js                         |   2 +-
 user-guide/expressions.html            | 668 +++++++++++++++++++++++++++------
 user-guide/operators.html              |  60 ++-
 5 files changed, 778 insertions(+), 246 deletions(-)

diff --git a/_sources/user-guide/expressions.md.txt 
b/_sources/user-guide/expressions.md.txt
index 775ebedb..14b6f18d 100644
--- a/_sources/user-guide/expressions.md.txt
+++ b/_sources/user-guide/expressions.md.txt
@@ -19,99 +19,174 @@
 
 # Supported Spark Expressions
 
-The following Spark expressions are currently available:
-
-- Literals
-- Arithmetic Operators
-  - UnaryMinus
-  - Add/Minus/Multiply/Divide/Remainder
-- Conditional functions
-  - Case When
-  - If
-- Cast
-- Coalesce
-- BloomFilterMightContain
-- Boolean functions
-  - And
-  - Or
-  - Not
-  - EqualTo
-  - EqualNullSafe
-  - GreaterThan
-  - GreaterThanOrEqual
-  - LessThan
-  - LessThanOrEqual
-  - IsNull
-  - IsNotNull
-  - In
-- String functions
-  - Substring
-  - Coalesce
-  - StringSpace
-  - Like
-  - Contains
-  - Startswith
-  - Endswith
-  - Ascii
-  - Bit_length
-  - Octet_length
-  - Upper
-  - Lower
-  - Chr
-  - Initcap
-  - Trim/Btrim/Ltrim/Rtrim
-  - Concat_ws
-  - Repeat
-  - Length
-  - Reverse
-  - Instr
-  - Replace
-  - Translate
-- Bitwise functions
-  - Shiftright/Shiftleft
-- Date/Time functions
-  - Year/Hour/Minute/Second
-- Hash functions
-  - Md5
-  - Sha2
-  - Hash
-  - Xxhash64
-- Math functions
-  - Abs
-  - Acos
-  - Asin
-  - Atan
-  - Atan2
-  - Cos
-  - Exp
-  - Ln
-  - Log10
-  - Log2
-  - Pow
-  - Round
-  - Signum
-  - Sin
-  - Sqrt
-  - Tan
-  - Ceil
-  - Floor
-- Aggregate functions
-  - Count
-  - Sum
-  - Max
-  - Min
-  - Avg
-  - First
-  - Last
-  - BitAnd
-  - BitOr
-  - BitXor
-  - BoolAnd
-  - BoolOr
-  - CovPopulation
-  - CovSample
-  - VariancePop
-  - VarianceSamp
-  - StddevPop
-  - StddevSamp
-  - Corr
+The following Spark expressions are currently available. Any known 
compatibility issues are noted in the following tables.
+
+## Literal Values
+
+| Expression                             | Notes |
+| -------------------------------------- | ----- |
+| Literal values of supported data types |       |
+
+## Unary Arithmetic
+
+| Expression       | Notes |
+| ---------------- | ----- |
+| UnaryMinus (`-`) |       |
+
+## Binary Arithmeticx
+
+| Expression      | Notes                                               |
+| --------------- | --------------------------------------------------- |
+| Add (`+`)       |                                                     |
+| Subtract (`-`)  |                                                     |
+| Multiply (`*`)  |                                                     |
+| Divide (`/`)    |                                                     |
+| Remainder (`%`) | Comet produces `NaN` instead of `NULL` for `% -0.0` |
+
+## Conditional Expressions
+
+| Expression | Notes |
+| ---------- | ----- |
+| CaseWhen   |       |
+| If         |       |
+
+## Comparison
+
+| Expression                | Notes |
+| ------------------------- | ----- |
+| EqualTo (`=`)             |       |
+| EqualNullSafe (`<=>`)     |       |
+| GreaterThan (`>`)         |       |
+| GreaterThanOrEqual (`>=`) |       |
+| LessThan (`<`)            |       |
+| LessThanOrEqual (`<=`)    |       |
+| IsNull (`IS NULL`)        |       |
+| IsNotNull (`IS NOT NULL`) |       |
+| In (`IN`)                 |       |
+
+## String Functions
+
+| Expression      | Notes                                                      
                                                 |
+| --------------- | 
-----------------------------------------------------------------------------------------------------------
 |
+| Ascii           |                                                            
                                                 |
+| BitLength       |                                                            
                                                 |
+| Chr             |                                                            
                                                 |
+| ConcatWs        |                                                            
                                                 |
+| Contains        |                                                            
                                                 |
+| EndsWith        |                                                            
                                                 |
+| InitCap         |                                                            
                                                 |
+| Instr           |                                                            
                                                 |
+| Length          |                                                            
                                                 |
+| Like            |                                                            
                                                 |
+| Lower           |                                                            
                                                 |
+| OctetLength     |                                                            
                                                 |
+| Repeat          | Negative argument for number of times to repeat causes 
exception                                            |
+| Replace         |                                                            
                                                 |
+| Reverse         |                                                            
                                                 |
+| StartsWith      |                                                            
                                                 |
+| StringSpace     |                                                            
                                                 |
+| StringTrim      |                                                            
                                                 |
+| StringTrimBoth  |                                                            
                                                 |
+| StringTrimLeft  |                                                            
                                                 |
+| StringTrimRight |                                                            
                                                 |
+| Substring       |                                                            
                                                 |
+| Translate       |                                                            
                                                 |
+| Upper           |                                                            
                                                 |
+
+## Date/Time Functions
+
+| Expression     | Notes                    |
+| -------------- | ------------------------ |
+| DatePart       | Only `year` is supported |
+| Extract        | Only `year` is supported |
+| Hour           |                          |
+| Minute         |                          |
+| Second         |                          |
+| TruncDate      |                          |
+| TruncTimestamp |                          |
+| Year           |                          |
+
+## Math Expressions
+
+| Expression | Notes                                                           
    |
+| ---------- | 
------------------------------------------------------------------- |
+| Abs        |                                                                 
    |
+| Acos       |                                                                 
    |
+| Asin       |                                                                 
    |
+| Atan       |                                                                 
    |
+| Atan2      |                                                                 
    |
+| Ceil       |                                                                 
    |
+| Cos        |                                                                 
    |
+| Exp        |                                                                 
    |
+| Floor      |                                                                 
    |
+| Log        | log(0) will produce `-Infinity` unlike Spark which returns 
`null`   |
+| Log2       | log2(0) will produce `-Infinity` unlike Spark which returns 
`null`  |
+| Log10      | log10(0) will produce `-Infinity` unlike Spark which returns 
`null` |
+| Pow        |                                                                 
    |
+| Round      |                                                                 
    |
+| Signum     | Signum does not differentiate between `0.0` and `-0.0`          
    |
+| Sin        |                                                                 
    |
+| Sqrt       |                                                                 
    |
+| Tan        |                                                                 
    |
+
+## Hashing Functions
+
+| Expression | Notes |
+| ---------- | ----- |
+| Md5        |       |
+| Hash       |       |
+| Sha2       |       |
+| XxHash64   |       |
+
+## Boolean Expressions
+
+| Expression | Notes |
+| ---------- | ----- |
+| And        |       |
+| Or         |       |
+| Not        |       |
+
+## Bitwise Expressions
+
+| Expression           | Notes |
+| -------------------- | ----- |
+| ShiftLeft (`<<`)     |       |
+| ShiftRight (`>>`)    |       |
+| BitAnd (`&`)         |       |
+| BitOr (`\|`)         |       |
+| BitXor (`^`)         |       |
+| BitwiseNot (`~`)     |       |
+| BoolAnd (`bool_and`) |       |
+| BoolOr (`bool_or`)   |       |
+
+## Aggregate Expressions
+
+| Expression    | Notes |
+| ------------- | ----- |
+| Avg           |       |
+| BitAndAgg     |       |
+| BitOrAgg      |       |
+| BitXorAgg     |       |
+| Corr          |       |
+| Count         |       |
+| CovPopulation |       |
+| CovSample     |       |
+| First         |       |
+| Last          |       |
+| Max           |       |
+| Min           |       |
+| StddevPop     |       |
+| StddevSamp    |       |
+| Sum           |       |
+| VariancePop   |       |
+| VarianceSamp  |       |
+
+## Other
+
+| Expression              | Notes                                              
                             |
+| ----------------------- | 
------------------------------------------------------------------------------- 
|
+| Cast                    | See compatibility guide for list of supported cast 
expressions and known issues |
+| BloomFilterMightContain |                                                    
                             |
+| ScalarSubquery          |                                                    
                             |
+| Coalesce                |                                                    
                             |
+| NormalizeNaNAndZero     |                                                    
                             |
diff --git a/_sources/user-guide/operators.md.txt 
b/_sources/user-guide/operators.md.txt
index ec82e9f6..e3a3ac52 100644
--- a/_sources/user-guide/operators.md.txt
+++ b/_sources/user-guide/operators.md.txt
@@ -19,15 +19,20 @@
 
 # Supported Spark Operators
 
-The following Spark operators are currently available:
+The following Spark operators are currently replaced with native versions. 
Query stages that contain any operators
+not supported by Comet will fall back to regular Spark execution.
 
-- FileSourceScanExec/BatchScanExec for Parquet
-- Projection
-- Filter
-- Sort
-- Hash Aggregate
-- Limit
-- Sort-merge Join
-- Hash Join
-- Shuffle
-- Expand
+| Operator                                     | Notes |
+| -------------------------------------------- | ----- |
+| FileSourceScanExec/BatchScanExec for Parquet |       |
+| Projection                                   |       |
+| Filter                                       |       |
+| Sort                                         |       |
+| Hash Aggregate                               |       |
+| Limit                                        |       |
+| Sort-merge Join                              |       |
+| Hash Join                                    |       |
+| BroadcastHashJoinExec                        |       |
+| Shuffle                                      |       |
+| Expand                                       |       |
+| Union                                        |       |
diff --git a/searchindex.js b/searchindex.js
index 0ce03167..7647b48f 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"ANSI mode": [[8, "ansi-mode"]], "API 
Differences Between Spark Versions": [[0, 
"api-differences-between-spark-versions"]], "ASF Links": [[7, null]], "Adding 
Spark-side Tests for the New Expression": [[0, 
"adding-spark-side-tests-for-the-new-expression"]], "Adding a New Expression": 
[[0, "adding-a-new-expression"]], "Adding a New Scalar Function Expression": 
[[0, "adding-a-new-scalar-function-expression"]], "Adding the Expression To the 
Protobuf Definition" [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"ANSI mode": [[8, "ansi-mode"]], "API 
Differences Between Spark Versions": [[0, 
"api-differences-between-spark-versions"]], "ASF Links": [[7, null]], "Adding 
Spark-side Tests for the New Expression": [[0, 
"adding-spark-side-tests-for-the-new-expression"]], "Adding a New Expression": 
[[0, "adding-a-new-expression"]], "Adding a New Scalar Function Expression": 
[[0, "adding-a-new-scalar-function-expression"]], "Adding the Expression To the 
Protobuf Definition" [...]
\ No newline at end of file
diff --git a/user-guide/expressions.html b/user-guide/expressions.html
index 03d11ce9..d149bb0b 100644
--- a/user-guide/expressions.html
+++ b/user-guide/expressions.html
@@ -255,9 +255,79 @@ under the License.
               
               <div class="toc-item">
                 
+<div class="tocsection onthispage pt-5 pb-3">
+    <i class="fas fa-list"></i> On this page
+</div>
 
 <nav id="bd-toc-nav">
-    
+    <ul class="visible nav section-nav flex-column">
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#literal-values">
+   Literal Values
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#unary-arithmetic">
+   Unary Arithmetic
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#binary-arithmeticx">
+   Binary Arithmeticx
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#conditional-expressions">
+   Conditional Expressions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#comparison">
+   Comparison
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#string-functions">
+   String Functions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#date-time-functions">
+   Date/Time Functions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#math-expressions">
+   Math Expressions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#hashing-functions">
+   Hashing Functions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#boolean-expressions">
+   Boolean Expressions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#bitwise-expressions">
+   Bitwise Expressions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#aggregate-expressions">
+   Aggregate Expressions
+  </a>
+ </li>
+ <li class="toc-h2 nav-item toc-entry">
+  <a class="reference internal nav-link" href="#other">
+   Other
+  </a>
+ </li>
+</ul>
+
 </nav>
               </div>
               
@@ -304,130 +374,478 @@ under the License.
 -->
 <section id="supported-spark-expressions">
 <h1>Supported Spark Expressions<a class="headerlink" 
href="#supported-spark-expressions" title="Link to this heading">¶</a></h1>
-<p>The following Spark expressions are currently available:</p>
-<ul class="simple">
-<li><p>Literals</p></li>
-<li><p>Arithmetic Operators</p>
-<ul>
-<li><p>UnaryMinus</p></li>
-<li><p>Add/Minus/Multiply/Divide/Remainder</p></li>
-</ul>
-</li>
-<li><p>Conditional functions</p>
-<ul>
-<li><p>Case When</p></li>
-<li><p>If</p></li>
-</ul>
-</li>
-<li><p>Cast</p></li>
-<li><p>Coalesce</p></li>
-<li><p>BloomFilterMightContain</p></li>
-<li><p>Boolean functions</p>
-<ul>
-<li><p>And</p></li>
-<li><p>Or</p></li>
-<li><p>Not</p></li>
-<li><p>EqualTo</p></li>
-<li><p>EqualNullSafe</p></li>
-<li><p>GreaterThan</p></li>
-<li><p>GreaterThanOrEqual</p></li>
-<li><p>LessThan</p></li>
-<li><p>LessThanOrEqual</p></li>
-<li><p>IsNull</p></li>
-<li><p>IsNotNull</p></li>
-<li><p>In</p></li>
-</ul>
-</li>
-<li><p>String functions</p>
-<ul>
-<li><p>Substring</p></li>
-<li><p>Coalesce</p></li>
-<li><p>StringSpace</p></li>
-<li><p>Like</p></li>
-<li><p>Contains</p></li>
-<li><p>Startswith</p></li>
-<li><p>Endswith</p></li>
-<li><p>Ascii</p></li>
-<li><p>Bit_length</p></li>
-<li><p>Octet_length</p></li>
-<li><p>Upper</p></li>
-<li><p>Lower</p></li>
-<li><p>Chr</p></li>
-<li><p>Initcap</p></li>
-<li><p>Trim/Btrim/Ltrim/Rtrim</p></li>
-<li><p>Concat_ws</p></li>
-<li><p>Repeat</p></li>
-<li><p>Length</p></li>
-<li><p>Reverse</p></li>
-<li><p>Instr</p></li>
-<li><p>Replace</p></li>
-<li><p>Translate</p></li>
-</ul>
-</li>
-<li><p>Bitwise functions</p>
-<ul>
-<li><p>Shiftright/Shiftleft</p></li>
-</ul>
-</li>
-<li><p>Date/Time functions</p>
-<ul>
-<li><p>Year/Hour/Minute/Second</p></li>
-</ul>
-</li>
-<li><p>Hash functions</p>
-<ul>
-<li><p>Md5</p></li>
-<li><p>Sha2</p></li>
-<li><p>Hash</p></li>
-<li><p>Xxhash64</p></li>
-</ul>
-</li>
-<li><p>Math functions</p>
-<ul>
-<li><p>Abs</p></li>
-<li><p>Acos</p></li>
-<li><p>Asin</p></li>
-<li><p>Atan</p></li>
-<li><p>Atan2</p></li>
-<li><p>Cos</p></li>
-<li><p>Exp</p></li>
-<li><p>Ln</p></li>
-<li><p>Log10</p></li>
-<li><p>Log2</p></li>
-<li><p>Pow</p></li>
-<li><p>Round</p></li>
-<li><p>Signum</p></li>
-<li><p>Sin</p></li>
-<li><p>Sqrt</p></li>
-<li><p>Tan</p></li>
-<li><p>Ceil</p></li>
-<li><p>Floor</p></li>
-</ul>
-</li>
-<li><p>Aggregate functions</p>
-<ul>
-<li><p>Count</p></li>
-<li><p>Sum</p></li>
-<li><p>Max</p></li>
-<li><p>Min</p></li>
-<li><p>Avg</p></li>
-<li><p>First</p></li>
-<li><p>Last</p></li>
-<li><p>BitAnd</p></li>
-<li><p>BitOr</p></li>
-<li><p>BitXor</p></li>
-<li><p>BoolAnd</p></li>
-<li><p>BoolOr</p></li>
-<li><p>CovPopulation</p></li>
-<li><p>CovSample</p></li>
-<li><p>VariancePop</p></li>
-<li><p>VarianceSamp</p></li>
-<li><p>StddevPop</p></li>
-<li><p>StddevSamp</p></li>
-<li><p>Corr</p></li>
-</ul>
-</li>
-</ul>
+<p>The following Spark expressions are currently available. Any known 
compatibility issues are noted in the following tables.</p>
+<section id="literal-values">
+<h2>Literal Values<a class="headerlink" href="#literal-values" title="Link to 
this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Literal values of supported data types</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="unary-arithmetic">
+<h2>Unary Arithmetic<a class="headerlink" href="#unary-arithmetic" title="Link 
to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>UnaryMinus (<code class="docutils literal 
notranslate"><span class="pre">-</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="binary-arithmeticx">
+<h2>Binary Arithmeticx<a class="headerlink" href="#binary-arithmeticx" 
title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Add (<code class="docutils literal 
notranslate"><span class="pre">+</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Subtract (<code class="docutils literal 
notranslate"><span class="pre">-</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Multiply (<code class="docutils literal 
notranslate"><span class="pre">*</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Divide (<code class="docutils literal 
notranslate"><span class="pre">/</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Remainder (<code class="docutils literal 
notranslate"><span class="pre">%</span></code>)</p></td>
+<td><p>Comet produces <code class="docutils literal notranslate"><span 
class="pre">NaN</span></code> instead of <code class="docutils literal 
notranslate"><span class="pre">NULL</span></code> for <code class="docutils 
literal notranslate"><span class="pre">%</span> <span 
class="pre">-0.0</span></code></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="conditional-expressions">
+<h2>Conditional Expressions<a class="headerlink" 
href="#conditional-expressions" title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>CaseWhen</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>If</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="comparison">
+<h2>Comparison<a class="headerlink" href="#comparison" title="Link to this 
heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>EqualTo (<code class="docutils literal 
notranslate"><span class="pre">=</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>EqualNullSafe (<code class="docutils literal 
notranslate"><span class="pre">&lt;=&gt;</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>GreaterThan (<code class="docutils literal 
notranslate"><span class="pre">&gt;</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>GreaterThanOrEqual (<code class="docutils literal 
notranslate"><span class="pre">&gt;=</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>LessThan (<code class="docutils literal 
notranslate"><span class="pre">&lt;</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>LessThanOrEqual (<code class="docutils literal 
notranslate"><span class="pre">&lt;=</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>IsNull (<code class="docutils literal 
notranslate"><span class="pre">IS</span> <span 
class="pre">NULL</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>IsNotNull (<code class="docutils literal 
notranslate"><span class="pre">IS</span> <span class="pre">NOT</span> <span 
class="pre">NULL</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>In (<code class="docutils literal 
notranslate"><span class="pre">IN</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="string-functions">
+<h2>String Functions<a class="headerlink" href="#string-functions" title="Link 
to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Ascii</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>BitLength</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Chr</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>ConcatWs</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Contains</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>EndsWith</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>InitCap</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Instr</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Length</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Like</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Lower</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>OctetLength</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Repeat</p></td>
+<td><p>Negative argument for number of times to repeat causes 
exception</p></td>
+</tr>
+<tr class="row-odd"><td><p>Replace</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Reverse</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>StartsWith</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>StringSpace</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>StringTrim</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>StringTrimBoth</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>StringTrimLeft</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>StringTrimRight</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Substring</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Translate</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Upper</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="date-time-functions">
+<h2>Date/Time Functions<a class="headerlink" href="#date-time-functions" 
title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>DatePart</p></td>
+<td><p>Only <code class="docutils literal notranslate"><span 
class="pre">year</span></code> is supported</p></td>
+</tr>
+<tr class="row-odd"><td><p>Extract</p></td>
+<td><p>Only <code class="docutils literal notranslate"><span 
class="pre">year</span></code> is supported</p></td>
+</tr>
+<tr class="row-even"><td><p>Hour</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Minute</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Second</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>TruncDate</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>TruncTimestamp</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Year</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="math-expressions">
+<h2>Math Expressions<a class="headerlink" href="#math-expressions" title="Link 
to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Abs</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Acos</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Asin</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Atan</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Atan2</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Ceil</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Cos</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Exp</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Floor</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Log</p></td>
+<td><p>log(0) will produce <code class="docutils literal notranslate"><span 
class="pre">-Infinity</span></code> unlike Spark which returns <code 
class="docutils literal notranslate"><span 
class="pre">null</span></code></p></td>
+</tr>
+<tr class="row-even"><td><p>Log2</p></td>
+<td><p>log2(0) will produce <code class="docutils literal notranslate"><span 
class="pre">-Infinity</span></code> unlike Spark which returns <code 
class="docutils literal notranslate"><span 
class="pre">null</span></code></p></td>
+</tr>
+<tr class="row-odd"><td><p>Log10</p></td>
+<td><p>log10(0) will produce <code class="docutils literal notranslate"><span 
class="pre">-Infinity</span></code> unlike Spark which returns <code 
class="docutils literal notranslate"><span 
class="pre">null</span></code></p></td>
+</tr>
+<tr class="row-even"><td><p>Pow</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Round</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Signum</p></td>
+<td><p>Signum does not differentiate between <code class="docutils literal 
notranslate"><span class="pre">0.0</span></code> and <code class="docutils 
literal notranslate"><span class="pre">-0.0</span></code></p></td>
+</tr>
+<tr class="row-odd"><td><p>Sin</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Sqrt</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Tan</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="hashing-functions">
+<h2>Hashing Functions<a class="headerlink" href="#hashing-functions" 
title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Md5</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Hash</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Sha2</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>XxHash64</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="boolean-expressions">
+<h2>Boolean Expressions<a class="headerlink" href="#boolean-expressions" 
title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>And</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Or</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Not</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="bitwise-expressions">
+<h2>Bitwise Expressions<a class="headerlink" href="#bitwise-expressions" 
title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>ShiftLeft (<code class="docutils literal 
notranslate"><span class="pre">&lt;&lt;</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>ShiftRight (<code class="docutils literal 
notranslate"><span class="pre">&gt;&gt;</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>BitAnd (<code class="docutils literal 
notranslate"><span class="pre">&amp;</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>BitOr (<code class="docutils literal 
notranslate"><span class="pre">|</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>BitXor (<code class="docutils literal 
notranslate"><span class="pre">^</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>BitwiseNot (<code class="docutils literal 
notranslate"><span class="pre">~</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>BoolAnd (<code class="docutils literal 
notranslate"><span class="pre">bool_and</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>BoolOr (<code class="docutils literal 
notranslate"><span class="pre">bool_or</span></code>)</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="aggregate-expressions">
+<h2>Aggregate Expressions<a class="headerlink" href="#aggregate-expressions" 
title="Link to this heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Avg</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>BitAndAgg</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>BitOrAgg</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>BitXorAgg</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Corr</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Count</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>CovPopulation</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>CovSample</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>First</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Last</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Max</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Min</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>StddevPop</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>StddevSamp</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Sum</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>VariancePop</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>VarianceSamp</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
+<section id="other">
+<h2>Other<a class="headerlink" href="#other" title="Link to this 
heading">¶</a></h2>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Expression</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>Cast</p></td>
+<td><p>See compatibility guide for list of supported cast expressions and 
known issues</p></td>
+</tr>
+<tr class="row-odd"><td><p>BloomFilterMightContain</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>ScalarSubquery</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Coalesce</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>NormalizeNaNAndZero</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+</section>
 </section>
 
 
diff --git a/user-guide/operators.html b/user-guide/operators.html
index babfbe0c..de5dec93 100644
--- a/user-guide/operators.html
+++ b/user-guide/operators.html
@@ -304,19 +304,53 @@ under the License.
 -->
 <section id="supported-spark-operators">
 <h1>Supported Spark Operators<a class="headerlink" 
href="#supported-spark-operators" title="Link to this heading">¶</a></h1>
-<p>The following Spark operators are currently available:</p>
-<ul class="simple">
-<li><p>FileSourceScanExec/BatchScanExec for Parquet</p></li>
-<li><p>Projection</p></li>
-<li><p>Filter</p></li>
-<li><p>Sort</p></li>
-<li><p>Hash Aggregate</p></li>
-<li><p>Limit</p></li>
-<li><p>Sort-merge Join</p></li>
-<li><p>Hash Join</p></li>
-<li><p>Shuffle</p></li>
-<li><p>Expand</p></li>
-</ul>
+<p>The following Spark operators are currently replaced with native versions. 
Query stages that contain any operators
+not supported by Comet will fall back to regular Spark execution.</p>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>Operator</p></th>
+<th class="head"><p>Notes</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>FileSourceScanExec/BatchScanExec for 
Parquet</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Projection</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Filter</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Sort</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Hash Aggregate</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Limit</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Sort-merge Join</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Hash Join</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>BroadcastHashJoinExec</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Shuffle</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p>Expand</p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p>Union</p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
 </section>
 
 


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


Reply via email to