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 3c36606d Publish built docs triggered by
8e73f7cab5489d5918512b4ae206e39b96242320
3c36606d is described below
commit 3c36606d7ea4cb9300991739e08d74c5cd3ddbc3
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Tue May 7 04:42:16 2024 +0000
Publish built docs triggered by 8e73f7cab5489d5918512b4ae206e39b96242320
---
_sources/user-guide/compatibility-template.md.txt | 18 +-
_sources/user-guide/compatibility.md.txt | 203 +++++------
searchindex.js | 2 +-
user-guide/compatibility-template.html | 35 +-
user-guide/compatibility.html | 405 ++++------------------
5 files changed, 208 insertions(+), 455 deletions(-)
diff --git a/_sources/user-guide/compatibility-template.md.txt
b/_sources/user-guide/compatibility-template.md.txt
index deaca2d2..64f87135 100644
--- a/_sources/user-guide/compatibility-template.md.txt
+++ b/_sources/user-guide/compatibility-template.md.txt
@@ -44,7 +44,19 @@ Cast operations in Comet fall into three levels of support:
- **Unsupported**: Comet does not provide a native version of this cast
expression and the query stage will fall back to
Spark.
-The following table shows the current cast operations supported by Comet. Any
cast that does not appear in this
-table (such as those involving complex types and timestamp_ntz, for example)
are not supported by Comet.
+### Compatible Casts
-<!--CAST_TABLE-->
+The following cast operations are generally compatible with Spark except for
the differences noted here.
+
+<!--COMPAT_CAST_TABLE-->
+
+### Incompatible Casts
+
+The following cast operations are not compatible with Spark for all inputs and
are disabled by default.
+
+<!--INCOMPAT_CAST_TABLE-->
+
+### Unsupported Casts
+
+Any cast not listed in the previous tables is currently unsupported. We are
working on adding more. See the
+[tracking issue](https://github.com/apache/datafusion-comet/issues/286) for
more details.
diff --git a/_sources/user-guide/compatibility.md.txt
b/_sources/user-guide/compatibility.md.txt
index 9a2478d3..57a4271f 100644
--- a/_sources/user-guide/compatibility.md.txt
+++ b/_sources/user-guide/compatibility.md.txt
@@ -38,122 +38,89 @@ Cast operations in Comet fall into three levels of support:
- **Compatible**: The results match Apache Spark
- **Incompatible**: The results may match Apache Spark for some inputs, but
there are known issues where some inputs
- will result in incorrect results or exceptions. The query stage will fall
back to Spark by default. Setting
- `spark.comet.cast.allowIncompatible=true` will allow all incompatible casts
to run natively in Comet, but this is not
- recommended for production use.
+will result in incorrect results or exceptions. The query stage will fall back
to Spark by default. Setting
+`spark.comet.cast.allowIncompatible=true` will allow all incompatible casts to
run natively in Comet, but this is not
+recommended for production use.
- **Unsupported**: Comet does not provide a native version of this cast
expression and the query stage will fall back to
- Spark.
-
-The following table shows the current cast operations supported by Comet. Any
cast that does not appear in this
-table (such as those involving complex types and timestamp_ntz, for example)
are not supported by Comet.
-
-| From Type | To Type | Compatible? | Notes |
-| --------- | --------- | ------------ | ----------------------------------- |
-| boolean | byte | Compatible | |
-| boolean | short | Compatible | |
-| boolean | integer | Compatible | |
-| boolean | long | Compatible | |
-| boolean | float | Compatible | |
-| boolean | double | Compatible | |
-| boolean | decimal | Unsupported | |
-| boolean | string | Compatible | |
-| boolean | timestamp | Unsupported | |
-| byte | boolean | Compatible | |
-| byte | short | Compatible | |
-| byte | integer | Compatible | |
-| byte | long | Compatible | |
-| byte | float | Compatible | |
-| byte | double | Compatible | |
-| byte | decimal | Compatible | |
-| byte | string | Compatible | |
-| byte | binary | Unsupported | |
-| byte | timestamp | Unsupported | |
-| short | boolean | Compatible | |
-| short | byte | Compatible | |
-| short | integer | Compatible | |
-| short | long | Compatible | |
-| short | float | Compatible | |
-| short | double | Compatible | |
-| short | decimal | Compatible | |
-| short | string | Compatible | |
-| short | binary | Unsupported | |
-| short | timestamp | Unsupported | |
-| integer | boolean | Compatible | |
-| integer | byte | Compatible | |
-| integer | short | Compatible | |
-| integer | long | Compatible | |
-| integer | float | Compatible | |
-| integer | double | Compatible | |
-| integer | decimal | Compatible | |
-| integer | string | Compatible | |
-| integer | binary | Unsupported | |
-| integer | timestamp | Unsupported | |
-| long | boolean | Compatible | |
-| long | byte | Compatible | |
-| long | short | Compatible | |
-| long | integer | Compatible | |
-| long | float | Compatible | |
-| long | double | Compatible | |
-| long | decimal | Compatible | |
-| long | string | Compatible | |
-| long | binary | Unsupported | |
-| long | timestamp | Unsupported | |
-| float | boolean | Compatible | |
-| float | byte | Unsupported | |
-| float | short | Unsupported | |
-| float | integer | Unsupported | |
-| float | long | Unsupported | |
-| float | double | Compatible | |
-| float | decimal | Unsupported | |
-| float | string | Incompatible | |
-| float | timestamp | Unsupported | |
-| double | boolean | Compatible | |
-| double | byte | Unsupported | |
-| double | short | Unsupported | |
-| double | integer | Unsupported | |
-| double | long | Unsupported | |
-| double | float | Compatible | |
-| double | decimal | Incompatible | |
-| double | string | Incompatible | |
-| double | timestamp | Unsupported | |
-| decimal | boolean | Unsupported | |
-| decimal | byte | Unsupported | |
-| decimal | short | Unsupported | |
-| decimal | integer | Unsupported | |
-| decimal | long | Unsupported | |
-| decimal | float | Compatible | |
-| decimal | double | Compatible | |
-| decimal | string | Unsupported | |
-| decimal | timestamp | Unsupported | |
-| string | boolean | Compatible | |
-| string | byte | Compatible | |
-| string | short | Compatible | |
-| string | integer | Compatible | |
-| string | long | Compatible | |
-| string | float | Unsupported | |
-| string | double | Unsupported | |
-| string | decimal | Unsupported | |
-| string | binary | Compatible | |
-| string | date | Unsupported | |
-| string | timestamp | Incompatible | Not all valid formats are supported |
-| binary | string | Incompatible | |
-| date | boolean | Unsupported | |
-| date | byte | Unsupported | |
-| date | short | Unsupported | |
-| date | integer | Unsupported | |
-| date | long | Unsupported | |
-| date | float | Unsupported | |
-| date | double | Unsupported | |
-| date | decimal | Unsupported | |
-| date | string | Compatible | |
-| date | timestamp | Unsupported | |
-| timestamp | boolean | Unsupported | |
-| timestamp | byte | Unsupported | |
-| timestamp | short | Unsupported | |
-| timestamp | integer | Unsupported | |
-| timestamp | long | Compatible | |
-| timestamp | float | Unsupported | |
-| timestamp | double | Unsupported | |
-| timestamp | decimal | Unsupported | |
-| timestamp | string | Compatible | |
-| timestamp | date | Compatible | |
+Spark.
+
+### Compatible Casts
+
+The following cast operations are generally compatible with Spark except for
the differences noted here.
+
+| From Type | To Type | Notes |
+|-|-|-|
+| boolean | byte | |
+| boolean | short | |
+| boolean | integer | |
+| boolean | long | |
+| boolean | float | |
+| boolean | double | |
+| boolean | string | |
+| byte | boolean | |
+| byte | short | |
+| byte | integer | |
+| byte | long | |
+| byte | float | |
+| byte | double | |
+| byte | decimal | |
+| byte | string | |
+| short | boolean | |
+| short | byte | |
+| short | integer | |
+| short | long | |
+| short | float | |
+| short | double | |
+| short | decimal | |
+| short | string | |
+| integer | boolean | |
+| integer | byte | |
+| integer | short | |
+| integer | long | |
+| integer | float | |
+| integer | double | |
+| integer | string | |
+| long | boolean | |
+| long | byte | |
+| long | short | |
+| long | integer | |
+| long | float | |
+| long | double | |
+| long | string | |
+| float | boolean | |
+| float | double | |
+| float | string | There can be differences in precision. For example, the
input "1.4E-45" will produce 1.0E-45 instead of 1.4E-45 |
+| double | boolean | |
+| double | float | |
+| double | string | There can be differences in precision. For example, the
input "1.4E-45" will produce 1.0E-45 instead of 1.4E-45 |
+| decimal | float | |
+| decimal | double | |
+| string | boolean | |
+| string | byte | |
+| string | short | |
+| string | integer | |
+| string | long | |
+| string | binary | |
+| date | string | |
+| timestamp | long | |
+| timestamp | decimal | |
+| timestamp | string | |
+| timestamp | date | |
+
+### Incompatible Casts
+
+The following cast operations are not compatible with Spark for all inputs and
are disabled by default.
+
+| From Type | To Type | Notes |
+|-|-|-|
+| integer | decimal | No overflow check |
+| long | decimal | No overflow check |
+| float | decimal | No overflow check |
+| double | decimal | No overflow check |
+| string | timestamp | Not all valid formats are supported |
+| binary | string | Only works for binary data representing valid UTF-8
strings |
+
+### Unsupported Casts
+
+Any cast not listed in the previous tables is currently unsupported. We are
working on adding more. See the
+[tracking issue](https://github.com/apache/datafusion-comet/issues/286) for
more details.
diff --git a/searchindex.js b/searchindex.js
index e48623e8..713f69fa 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"ANSI mode": [[5, "ansi-mode"], [6,
"ansi-mode"]], "ASF Links": [[4, null]], "Additional Info": [[1,
"additional-info"]], "After your debugging is done,": [[1,
"after-your-debugging-is-done"]], "Apache DataFusion Comet": [[4,
"apache-datafusion-comet"]], "Architecture": [[13, "architecture"]], "Asking
for Help": [[0, "asking-for-help"]], "Benchmark": [[2, "benchmark"]], "Build &
Test": [[2, "build-test"]], "Building From Source": [[11, "building-from-source
[...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"ANSI mode": [[5, "ansi-mode"], [6,
"ansi-mode"]], "ASF Links": [[4, null]], "Additional Info": [[1,
"additional-info"]], "After your debugging is done,": [[1,
"after-your-debugging-is-done"]], "Apache DataFusion Comet": [[4,
"apache-datafusion-comet"]], "Architecture": [[13, "architecture"]], "Asking
for Help": [[0, "asking-for-help"]], "Benchmark": [[2, "benchmark"]], "Build &
Test": [[2, "build-test"]], "Building From Source": [[11, "building-from-source
[...]
\ No newline at end of file
diff --git a/user-guide/compatibility-template.html
b/user-guide/compatibility-template.html
index ad0d8d6b..cff720fc 100644
--- a/user-guide/compatibility-template.html
+++ b/user-guide/compatibility-template.html
@@ -248,6 +248,23 @@ under the License.
<a class="reference internal nav-link" href="#cast">
Cast
</a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#compatible-casts">
+ Compatible Casts
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#incompatible-casts">
+ Incompatible Casts
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#unsupported-casts">
+ Unsupported Casts
+ </a>
+ </li>
+ </ul>
</li>
</ul>
@@ -319,9 +336,21 @@ recommended for production use.</p></li>
<li><p><strong>Unsupported</strong>: Comet does not provide a native version
of this cast expression and the query stage will fall back to
Spark.</p></li>
</ul>
-<p>The following table shows the current cast operations supported by Comet.
Any cast that does not appear in this
-table (such as those involving complex types and timestamp_ntz, for example)
are not supported by Comet.</p>
-<!--CAST_TABLE-->
+<section id="compatible-casts">
+<h3>Compatible Casts<a class="headerlink" href="#compatible-casts" title="Link
to this heading">¶</a></h3>
+<p>The following cast operations are generally compatible with Spark except
for the differences noted here.</p>
+<!--COMPAT_CAST_TABLE-->
+</section>
+<section id="incompatible-casts">
+<h3>Incompatible Casts<a class="headerlink" href="#incompatible-casts"
title="Link to this heading">¶</a></h3>
+<p>The following cast operations are not compatible with Spark for all inputs
and are disabled by default.</p>
+<!--INCOMPAT_CAST_TABLE-->
+</section>
+<section id="unsupported-casts">
+<h3>Unsupported Casts<a class="headerlink" href="#unsupported-casts"
title="Link to this heading">¶</a></h3>
+<p>Any cast not listed in the previous tables is currently unsupported. We are
working on adding more. See the
+<a class="reference external"
href="https://github.com/apache/datafusion-comet/issues/286">tracking issue</a>
for more details.</p>
+</section>
</section>
</section>
diff --git a/user-guide/compatibility.html b/user-guide/compatibility.html
index 7466a2c4..e927a9e9 100644
--- a/user-guide/compatibility.html
+++ b/user-guide/compatibility.html
@@ -250,6 +250,23 @@ under the License.
<a class="reference internal nav-link" href="#cast">
Cast
</a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#compatible-casts">
+ Compatible Casts
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#incompatible-casts">
+ Incompatible Casts
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#unsupported-casts">
+ Unsupported Casts
+ </a>
+ </li>
+ </ul>
</li>
</ul>
@@ -321,560 +338,288 @@ recommended for production use.</p></li>
<li><p><strong>Unsupported</strong>: Comet does not provide a native version
of this cast expression and the query stage will fall back to
Spark.</p></li>
</ul>
-<p>The following table shows the current cast operations supported by Comet.
Any cast that does not appear in this
-table (such as those involving complex types and timestamp_ntz, for example)
are not supported by Comet.</p>
+<section id="compatible-casts">
+<h3>Compatible Casts<a class="headerlink" href="#compatible-casts" title="Link
to this heading">¶</a></h3>
+<p>The following cast operations are generally compatible with Spark except
for the differences noted here.</p>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>From Type</p></th>
<th class="head"><p>To Type</p></th>
-<th class="head"><p>Compatible?</p></th>
<th class="head"><p>Notes</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>boolean</p></td>
<td><p>byte</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>boolean</p></td>
<td><p>short</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>boolean</p></td>
<td><p>integer</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>boolean</p></td>
<td><p>long</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>boolean</p></td>
<td><p>float</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>boolean</p></td>
<td><p>double</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>boolean</p></td>
-<td><p>decimal</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>boolean</p></td>
<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>boolean</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>byte</p></td>
<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>byte</p></td>
<td><p>short</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>byte</p></td>
<td><p>integer</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>byte</p></td>
<td><p>long</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>byte</p></td>
<td><p>float</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>byte</p></td>
<td><p>double</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>byte</p></td>
<td><p>decimal</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>byte</p></td>
<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>byte</p></td>
-<td><p>binary</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>byte</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>short</p></td>
<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>short</p></td>
<td><p>byte</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>short</p></td>
<td><p>integer</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>short</p></td>
<td><p>long</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>short</p></td>
<td><p>float</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>short</p></td>
<td><p>double</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>short</p></td>
<td><p>decimal</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>short</p></td>
<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>short</p></td>
-<td><p>binary</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>short</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>integer</p></td>
<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>integer</p></td>
<td><p>byte</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>integer</p></td>
<td><p>short</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>integer</p></td>
<td><p>long</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>integer</p></td>
<td><p>float</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>integer</p></td>
<td><p>double</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>integer</p></td>
-<td><p>decimal</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>integer</p></td>
<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>integer</p></td>
-<td><p>binary</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>integer</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>long</p></td>
-<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>long</p></td>
-<td><p>byte</p></td>
-<td><p>Compatible</p></td>
+<td><p>boolean</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>long</p></td>
-<td><p>short</p></td>
-<td><p>Compatible</p></td>
+<td><p>byte</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>long</p></td>
-<td><p>integer</p></td>
-<td><p>Compatible</p></td>
+<td><p>short</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>long</p></td>
-<td><p>float</p></td>
-<td><p>Compatible</p></td>
+<td><p>integer</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>long</p></td>
-<td><p>double</p></td>
-<td><p>Compatible</p></td>
+<td><p>float</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>long</p></td>
-<td><p>decimal</p></td>
-<td><p>Compatible</p></td>
+<td><p>double</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>long</p></td>
<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>long</p></td>
-<td><p>binary</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>long</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>float</p></td>
<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>float</p></td>
-<td><p>byte</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>float</p></td>
-<td><p>short</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>float</p></td>
-<td><p>integer</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>float</p></td>
-<td><p>long</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>float</p></td>
<td><p>double</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>float</p></td>
-<td><p>decimal</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>float</p></td>
<td><p>string</p></td>
-<td><p>Incompatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>float</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
+<td><p>There can be differences in precision. For example, the input “1.4E-45”
will produce 1.0E-45 instead of 1.4E-45</p></td>
</tr>
<tr class="row-even"><td><p>double</p></td>
<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>double</p></td>
-<td><p>byte</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>double</p></td>
-<td><p>short</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>double</p></td>
-<td><p>integer</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>double</p></td>
-<td><p>long</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>double</p></td>
<td><p>float</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>double</p></td>
-<td><p>decimal</p></td>
-<td><p>Incompatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>double</p></td>
<td><p>string</p></td>
-<td><p>Incompatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>double</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>decimal</p></td>
-<td><p>boolean</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>decimal</p></td>
-<td><p>byte</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>decimal</p></td>
-<td><p>short</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>decimal</p></td>
-<td><p>integer</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
+<td><p>There can be differences in precision. For example, the input “1.4E-45”
will produce 1.0E-45 instead of 1.4E-45</p></td>
</tr>
<tr class="row-odd"><td><p>decimal</p></td>
-<td><p>long</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>decimal</p></td>
<td><p>float</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>decimal</p></td>
-<td><p>double</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>decimal</p></td>
-<td><p>string</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>decimal</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>string</p></td>
-<td><p>boolean</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>string</p></td>
-<td><p>byte</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>string</p></td>
-<td><p>short</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>string</p></td>
-<td><p>integer</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>string</p></td>
-<td><p>long</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>string</p></td>
-<td><p>float</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>string</p></td>
<td><p>double</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>string</p></td>
-<td><p>decimal</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>string</p></td>
-<td><p>binary</p></td>
-<td><p>Compatible</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>string</p></td>
-<td><p>date</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>string</p></td>
-<td><p>timestamp</p></td>
-<td><p>Incompatible</p></td>
-<td><p>Not all valid formats are supported</p></td>
-</tr>
-<tr class="row-odd"><td><p>binary</p></td>
-<td><p>string</p></td>
-<td><p>Incompatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>date</p></td>
<td><p>boolean</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p>date</p></td>
+<tr class="row-even"><td><p>string</p></td>
<td><p>byte</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p>date</p></td>
+<tr class="row-odd"><td><p>string</p></td>
<td><p>short</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p>date</p></td>
+<tr class="row-even"><td><p>string</p></td>
<td><p>integer</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p>date</p></td>
+<tr class="row-odd"><td><p>string</p></td>
<td><p>long</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
-<tr class="row-odd"><td><p>date</p></td>
-<td><p>float</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>date</p></td>
-<td><p>double</p></td>
-<td><p>Unsupported</p></td>
+<tr class="row-even"><td><p>string</p></td>
+<td><p>binary</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>date</p></td>
-<td><p>decimal</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-even"><td><p>date</p></td>
<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
-</tr>
-<tr class="row-odd"><td><p>date</p></td>
-<td><p>timestamp</p></td>
-<td><p>Unsupported</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>timestamp</p></td>
-<td><p>boolean</p></td>
-<td><p>Unsupported</p></td>
+<td><p>long</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>timestamp</p></td>
-<td><p>byte</p></td>
-<td><p>Unsupported</p></td>
+<td><p>decimal</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>timestamp</p></td>
-<td><p>short</p></td>
-<td><p>Unsupported</p></td>
+<td><p>string</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>timestamp</p></td>
-<td><p>integer</p></td>
-<td><p>Unsupported</p></td>
+<td><p>date</p></td>
<td><p></p></td>
</tr>
-<tr class="row-even"><td><p>timestamp</p></td>
-<td><p>long</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
+</tbody>
+</table>
+</section>
+<section id="incompatible-casts">
+<h3>Incompatible Casts<a class="headerlink" href="#incompatible-casts"
title="Link to this heading">¶</a></h3>
+<p>The following cast operations are not compatible with Spark for all inputs
and are disabled by default.</p>
+<table class="table">
+<thead>
+<tr class="row-odd"><th class="head"><p>From Type</p></th>
+<th class="head"><p>To Type</p></th>
+<th class="head"><p>Notes</p></th>
</tr>
-<tr class="row-odd"><td><p>timestamp</p></td>
-<td><p>float</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>integer</p></td>
+<td><p>decimal</p></td>
+<td><p>No overflow check</p></td>
</tr>
-<tr class="row-even"><td><p>timestamp</p></td>
-<td><p>double</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
+<tr class="row-odd"><td><p>long</p></td>
+<td><p>decimal</p></td>
+<td><p>No overflow check</p></td>
</tr>
-<tr class="row-odd"><td><p>timestamp</p></td>
+<tr class="row-even"><td><p>float</p></td>
<td><p>decimal</p></td>
-<td><p>Unsupported</p></td>
-<td><p></p></td>
+<td><p>No overflow check</p></td>
</tr>
-<tr class="row-even"><td><p>timestamp</p></td>
-<td><p>string</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
+<tr class="row-odd"><td><p>double</p></td>
+<td><p>decimal</p></td>
+<td><p>No overflow check</p></td>
</tr>
-<tr class="row-odd"><td><p>timestamp</p></td>
-<td><p>date</p></td>
-<td><p>Compatible</p></td>
-<td><p></p></td>
+<tr class="row-even"><td><p>string</p></td>
+<td><p>timestamp</p></td>
+<td><p>Not all valid formats are supported</p></td>
+</tr>
+<tr class="row-odd"><td><p>binary</p></td>
+<td><p>string</p></td>
+<td><p>Only works for binary data representing valid UTF-8 strings</p></td>
</tr>
</tbody>
</table>
</section>
+<section id="unsupported-casts">
+<h3>Unsupported Casts<a class="headerlink" href="#unsupported-casts"
title="Link to this heading">¶</a></h3>
+<p>Any cast not listed in the previous tables is currently unsupported. We are
working on adding more. See the
+<a class="reference external"
href="https://github.com/apache/datafusion-comet/issues/286">tracking issue</a>
for more details.</p>
+</section>
+</section>
</section>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]