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 edd90044 Publish built docs triggered by 
d584229c8e7d9f04b9df2803958b87714356860b
edd90044 is described below

commit edd90044077f84b3875cdf1a97dbe04e5d94f002
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Tue Jun 18 23:04:00 2024 +0000

    Publish built docs triggered by d584229c8e7d9f04b9df2803958b87714356860b
---
 _sources/contributor-guide/adding_a_new_expression.md.txt | 9 +++------
 _sources/user-guide/installation.md.txt                   | 2 +-
 _sources/user-guide/overview.md.txt                       | 2 +-
 contributor-guide/adding_a_new_expression.html            | 9 +++------
 searchindex.js                                            | 2 +-
 user-guide/installation.html                              | 2 +-
 user-guide/overview.html                                  | 2 +-
 7 files changed, 11 insertions(+), 17 deletions(-)

diff --git a/_sources/contributor-guide/adding_a_new_expression.md.txt 
b/_sources/contributor-guide/adding_a_new_expression.md.txt
index 6cf10c75..6d906c66 100644
--- a/_sources/contributor-guide/adding_a_new_expression.md.txt
+++ b/_sources/contributor-guide/adding_a_new_expression.md.txt
@@ -46,7 +46,7 @@ The `QueryPlanSerde` object has a method `exprToProto`, which 
is responsible for
 For example, the `unhex` function looks like this:
 
 ```scala
-case e: Unhex if !isSpark32 =>
+case e: Unhex =>
   val unHex = unhexSerde(e)
 
   val childExpr = exprToProtoInternal(unHex._1, inputs)
@@ -59,7 +59,6 @@ case e: Unhex if !isSpark32 =>
 
 A few things to note here:
 
-* The `isSpark32` check is used to fall back to Spark's implementation of 
`unhex` in Spark 3.2. This is somewhat context specific, because in this case, 
due to a bug in Spark 3.2 for `unhex`, we want to use the Spark implementation 
and not a Comet implementation that would behave differently if correct.
 * The function is recursively called on child expressions, so you'll need to 
make sure that the child expressions are also converted to protobuf.
 * `scalarExprToProtoWithReturnType` is for scalar functions that need return 
type information. Your expression may use a different method depending on the 
type of expression.
 
@@ -71,8 +70,6 @@ For example, this is the test case for the `unhex` expression:
 
 ```scala
 test("unhex") {
-  assume(!isSpark32, "unhex function has incorrect behavior in 3.2")  // used 
to skip the test in Spark 3.2
-
   val table = "unhex_table"
   withTable(table) {
     sql(s"create table $table(col string) using parquet")
@@ -172,11 +169,11 @@ pub(super) fn spark_unhex(args: &[ColumnarValue]) -> 
Result<ColumnarValue, DataF
 If the expression you're adding has different behavior across different Spark 
versions, you'll need to account for that in your implementation. There are two 
tools at your disposal to help with this:
 
 1. Shims that exist in 
`spark/src/main/spark-$SPARK_VERSION/org/apache/comet/shims/CometExprShim.scala`
 for each Spark version. These shims are used to provide compatibility between 
different Spark versions.
-2. Variables that correspond to the Spark version, such as `isSpark32`, which 
can be used to conditionally execute code based on the Spark version.
+2. Variables that correspond to the Spark version, such as `isSpark33Plus`, 
which can be used to conditionally execute code based on the Spark version.
 
 ## Shimming to Support Different Spark Versions
 
-By adding shims for each Spark version, you can provide a consistent interface 
for the expression across different Spark versions. For example, `unhex` added 
a new optional parameter is Spark 3.4, for if it should `failOnError` or not. 
So for version 3.2 and 3.3, the shim is:
+By adding shims for each Spark version, you can provide a consistent interface 
for the expression across different Spark versions. For example, `unhex` added 
a new optional parameter is Spark 3.4, for if it should `failOnError` or not. 
So for version 3.3, the shim is:
 
 ```scala
 trait CometExprShim {
diff --git a/_sources/user-guide/installation.md.txt 
b/_sources/user-guide/installation.md.txt
index 7335a488..bdf6c0e0 100644
--- a/_sources/user-guide/installation.md.txt
+++ b/_sources/user-guide/installation.md.txt
@@ -28,7 +28,7 @@ Make sure the following requirements are met and software 
installed on your mach
 
 ## Requirements
 
-- Apache Spark 3.2, 3.3, or 3.4
+- Apache Spark 3.3, or 3.4
 - JDK 8 and up
 - GLIBC 2.17 (Centos 7) and up
 
diff --git a/_sources/user-guide/overview.md.txt 
b/_sources/user-guide/overview.md.txt
index b5425d77..87f5f286 100644
--- a/_sources/user-guide/overview.md.txt
+++ b/_sources/user-guide/overview.md.txt
@@ -40,7 +40,7 @@ The following diagram illustrates the architecture of Comet:
 
 ## Current Status
 
-The project is currently integrated into Apache Spark 3.2, 3.3, and 3.4.
+The project is currently integrated into Apache Spark 3.3, and 3.4.
 
 ## Feature Parity with Apache Spark
 
diff --git a/contributor-guide/adding_a_new_expression.html 
b/contributor-guide/adding_a_new_expression.html
index 1c35910f..fcd012a6 100644
--- a/contributor-guide/adding_a_new_expression.html
+++ b/contributor-guide/adding_a_new_expression.html
@@ -394,7 +394,7 @@ under the License.
 <h3>Adding the Expression in Scala<a class="headerlink" 
href="#adding-the-expression-in-scala" title="Link to this heading">¶</a></h3>
 <p>The <code class="docutils literal notranslate"><span 
class="pre">QueryPlanSerde</span></code> object has a method <code 
class="docutils literal notranslate"><span 
class="pre">exprToProto</span></code>, which is responsible for converting a 
Spark expression to a protobuf expression. Within that method is an <code 
class="docutils literal notranslate"><span 
class="pre">exprToProtoInternal</span></code> method that contains a large 
match statement for each expression type. You’ll need to  [...]
 <p>For example, the <code class="docutils literal notranslate"><span 
class="pre">unhex</span></code> function looks like this:</p>
-<div class="highlight-scala notranslate"><div 
class="highlight"><pre><span></span><span class="k">case</span><span class="w"> 
</span><span class="n">e</span><span class="p">:</span><span class="w"> 
</span><span class="nc">Unhex</span><span class="w"> </span><span 
class="k">if</span><span class="w"> </span><span class="o">!</span><span 
class="n">isSpark32</span><span class="w"> </span><span class="o">=&gt;</span>
+<div class="highlight-scala notranslate"><div 
class="highlight"><pre><span></span><span class="k">case</span><span class="w"> 
</span><span class="n">e</span><span class="p">:</span><span class="w"> 
</span><span class="nc">Unhex</span><span class="w"> </span><span 
class="o">=&gt;</span>
 <span class="w">  </span><span class="kd">val</span><span class="w"> 
</span><span class="n">unHex</span><span class="w"> </span><span 
class="o">=</span><span class="w"> </span><span 
class="n">unhexSerde</span><span class="p">(</span><span 
class="n">e</span><span class="p">)</span>
 
 <span class="w">  </span><span class="kd">val</span><span class="w"> 
</span><span class="n">childExpr</span><span class="w"> </span><span 
class="o">=</span><span class="w"> </span><span 
class="n">exprToProtoInternal</span><span class="p">(</span><span 
class="n">unHex</span><span class="p">.</span><span class="n">_1</span><span 
class="p">,</span><span class="w"> </span><span class="n">inputs</span><span 
class="p">)</span>
@@ -407,7 +407,6 @@ under the License.
 </div>
 <p>A few things to note here:</p>
 <ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span 
class="pre">isSpark32</span></code> check is used to fall back to Spark’s 
implementation of <code class="docutils literal notranslate"><span 
class="pre">unhex</span></code> in Spark 3.2. This is somewhat context 
specific, because in this case, due to a bug in Spark 3.2 for <code 
class="docutils literal notranslate"><span class="pre">unhex</span></code>, we 
want to use the Spark implementation and not a Comet implementation that  [...]
 <li><p>The function is recursively called on child expressions, so you’ll need 
to make sure that the child expressions are also converted to protobuf.</p></li>
 <li><p><code class="docutils literal notranslate"><span 
class="pre">scalarExprToProtoWithReturnType</span></code> is for scalar 
functions that need return type information. Your expression may use a 
different method depending on the type of expression.</p></li>
 </ul>
@@ -416,8 +415,6 @@ under the License.
 <p>It is important to verify that the new expression is correctly recognized 
by the native execution engine and matches the expected spark behavior. To do 
this, you can add a set of test cases in the <code class="docutils literal 
notranslate"><span class="pre">CometExpressionSuite</span></code>, and use the 
<code class="docutils literal notranslate"><span 
class="pre">checkSparkAnswerAndOperator</span></code> method to compare the 
results of the new expression with the expected Spark resu [...]
 <p>For example, this is the test case for the <code class="docutils literal 
notranslate"><span class="pre">unhex</span></code> expression:</p>
 <div class="highlight-scala notranslate"><div 
class="highlight"><pre><span></span><span class="n">test</span><span 
class="p">(</span><span class="s">&quot;unhex&quot;</span><span 
class="p">)</span><span class="w"> </span><span class="p">{</span>
-<span class="w">  </span><span class="n">assume</span><span 
class="p">(</span><span class="o">!</span><span class="n">isSpark32</span><span 
class="p">,</span><span class="w"> </span><span class="s">&quot;unhex function 
has incorrect behavior in 3.2&quot;</span><span class="p">)</span><span 
class="w">  </span><span class="c1">// used to skip the test in Spark 3.2</span>
-
 <span class="w">  </span><span class="kd">val</span><span class="w"> 
</span><span class="n">table</span><span class="w"> </span><span 
class="o">=</span><span class="w"> </span><span 
class="s">&quot;unhex_table&quot;</span>
 <span class="w">  </span><span class="n">withTable</span><span 
class="p">(</span><span class="n">table</span><span class="p">)</span><span 
class="w"> </span><span class="p">{</span>
 <span class="w">    </span><span class="n">sql</span><span 
class="p">(</span><span class="s">s&quot;create table </span><span 
class="si">$</span><span class="n">table</span><span class="s">(col string) 
using parquet&quot;</span><span class="p">)</span>
@@ -508,13 +505,13 @@ under the License.
 <p>If the expression you’re adding has different behavior across different 
Spark versions, you’ll need to account for that in your implementation. There 
are two tools at your disposal to help with this:</p>
 <ol class="arabic simple">
 <li><p>Shims that exist in <code class="docutils literal notranslate"><span 
class="pre">spark/src/main/spark-$SPARK_VERSION/org/apache/comet/shims/CometExprShim.scala</span></code>
 for each Spark version. These shims are used to provide compatibility between 
different Spark versions.</p></li>
-<li><p>Variables that correspond to the Spark version, such as <code 
class="docutils literal notranslate"><span class="pre">isSpark32</span></code>, 
which can be used to conditionally execute code based on the Spark 
version.</p></li>
+<li><p>Variables that correspond to the Spark version, such as <code 
class="docutils literal notranslate"><span 
class="pre">isSpark33Plus</span></code>, which can be used to conditionally 
execute code based on the Spark version.</p></li>
 </ol>
 </section>
 </section>
 <section id="shimming-to-support-different-spark-versions">
 <h2>Shimming to Support Different Spark Versions<a class="headerlink" 
href="#shimming-to-support-different-spark-versions" title="Link to this 
heading">¶</a></h2>
-<p>By adding shims for each Spark version, you can provide a consistent 
interface for the expression across different Spark versions. For example, 
<code class="docutils literal notranslate"><span 
class="pre">unhex</span></code> added a new optional parameter is Spark 3.4, 
for if it should <code class="docutils literal notranslate"><span 
class="pre">failOnError</span></code> or not. So for version 3.2 and 3.3, the 
shim is:</p>
+<p>By adding shims for each Spark version, you can provide a consistent 
interface for the expression across different Spark versions. For example, 
<code class="docutils literal notranslate"><span 
class="pre">unhex</span></code> added a new optional parameter is Spark 3.4, 
for if it should <code class="docutils literal notranslate"><span 
class="pre">failOnError</span></code> or not. So for version 3.3, the shim 
is:</p>
 <div class="highlight-scala notranslate"><div 
class="highlight"><pre><span></span><span class="k">trait</span><span 
class="w"> </span><span class="nc">CometExprShim</span><span class="w"> 
</span><span class="p">{</span>
 <span class="w">    </span><span class="cm">/**</span>
 <span class="cm">      * Returns a tuple of expressions for the `unhex` 
function.</span>
diff --git a/searchindex.js b/searchindex.js
index 7647b48f..57adf649 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/installation.html b/user-guide/installation.html
index 5925c0d7..3d0b01a6 100644
--- a/user-guide/installation.html
+++ b/user-guide/installation.html
@@ -357,7 +357,7 @@ under the License.
 <section id="requirements">
 <h2>Requirements<a class="headerlink" href="#requirements" title="Link to this 
heading">¶</a></h2>
 <ul class="simple">
-<li><p>Apache Spark 3.2, 3.3, or 3.4</p></li>
+<li><p>Apache Spark 3.3, or 3.4</p></li>
 <li><p>JDK 8 and up</p></li>
 <li><p>GLIBC 2.17 (Centos 7) and up</p></li>
 </ul>
diff --git a/user-guide/overview.html b/user-guide/overview.html
index f74dd4f9..1adecd9a 100644
--- a/user-guide/overview.html
+++ b/user-guide/overview.html
@@ -342,7 +342,7 @@ Filter/Project/Aggregation/Join/Exchange etc.</p></li>
 </section>
 <section id="current-status">
 <h2>Current Status<a class="headerlink" href="#current-status" title="Link to 
this heading">¶</a></h2>
-<p>The project is currently integrated into Apache Spark 3.2, 3.3, and 3.4.</p>
+<p>The project is currently integrated into Apache Spark 3.3, and 3.4.</p>
 </section>
 <section id="feature-parity-with-apache-spark">
 <h2>Feature Parity with Apache Spark<a class="headerlink" 
href="#feature-parity-with-apache-spark" title="Link to this heading">¶</a></h2>


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

Reply via email to