You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by "Fokko (via GitHub)" <gi...@apache.org> on 2024/05/07 20:28:19 UTC

[PR] [SPARK-48177][BUILD]: Bump Apache Parquet to 1.14.0 [spark]

Fokko opened a new pull request, #46447:
URL: https://github.com/apache/spark/pull/46447

   <!--
   Thanks for sending a pull request!  Here are some tips for you:
     1. If this is your first time, please read our contributor guidelines: https://spark.apache.org/contributing.html
     2. Ensure you have added or run the appropriate tests for your PR: https://spark.apache.org/developer-tools.html
     3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP][SPARK-XXXX] Your PR title ...'.
     4. Be sure to keep the PR description updated to reflect all changes.
     5. Please write your PR title to summarize what this PR proposes.
     6. If possible, provide a concise example to reproduce the issue for a faster review.
     7. If you want to add a new configuration, please read the guideline first for naming configurations in
        'core/src/main/scala/org/apache/spark/internal/config/ConfigEntry.scala'.
     8. If you want to add or modify an error type or message, please read the guideline first in
        'common/utils/src/main/resources/error/README.md'.
   -->
   
   ### What changes were proposed in this pull request?
   <!--
   Please clarify what changes you are proposing. The purpose of this section is to outline the changes and how this PR fixes the issue. 
   If possible, please consider writing useful notes for better and faster reviews in your PR. See the examples below.
     1. If you refactor some codes with changing classes, showing the class hierarchy will help reviewers.
     2. If you fix some SQL features, you can provide some references of other DBMSes.
     3. If there is design documentation, please add the link.
     4. If there is a discussion in the mailing list, please add the link.
   -->
   
   
   ### Why are the changes needed?
   
   Fixes quite a few bugs on the Parquet side: https://github.com/apache/parquet-mr/blob/master/CHANGES.md#version-1140
   
   <!--
   Please clarify why the changes are needed. For instance,
     1. If you propose a new API, clarify the use case for a new API.
     2. If you fix a bug, you can clarify why it is a bug.
   -->
   
   
   ### Does this PR introduce _any_ user-facing change?
   
   No
   <!--
   Note that it means *any* user-facing change including all aspects such as the documentation fix.
   If yes, please clarify the previous behavior and the change this PR proposes - provide the console output, description and/or an example to show the behavior difference if possible.
   If possible, please also clarify if this is a user-facing change compared to the released Spark versions or within the unreleased branches such as master.
   If no, write 'No'.
   -->
   
   
   ### How was this patch tested?
   
   Using the existing unit tests
   <!--
   If tests were added, say they were added here. Please make sure to add some test cases that check the changes thoroughly including negative and positive cases if possible.
   If it was tested in a way different from regular unit tests, please clarify how you tested step by step, ideally copy and paste-able, so that other reviewers can test and check, and descendants can verify in the future.
   If tests were not added, please describe why they were not added and/or why it was difficult to add.
   If benchmark tests were added, please run the benchmarks in GitHub Actions for the consistent environment, and the instructions could accord to: https://spark.apache.org/developer-tools.html#github-workflow-benchmarks.
   -->
   
   
   ### Was this patch authored or co-authored using generative AI tooling?
   <!--
   If generative AI tooling has been used in the process of authoring this patch, please include the
   phrase: 'Generated-by: ' followed by the name of the tool and its version.
   If no, write 'No'.
   Please refer to the [ASF Generative Tooling Guidance](https://www.apache.org/legal/generative-tooling.html) for details.
   -->
   
   No


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2203918516

   Thank you, @Fokko and all. Let me merge this for Apache Spark 4.0.0-preview2.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2174377720

   Could you make CI happy, @Fokko ?
   ```
   [info] - SPARK-30269 failed to update partition stats if it's equal to table's old stats *** FAILED *** (414 milliseconds)
   [info]   690 did not equal 657 (StatisticsSuite.scala:1610)
   ```
   
   ```
   [info] - Runtime bloom filter join: BF rewrite triggering threshold test *** FAILED *** (1 second, 469 milliseconds)
   [info]   2 did not equal 0 (InjectRuntimeFilterSuite.scala:248)
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2099295786

   cc @cloud-fan , @HyukjinKwon , @mridulm , @sunchao , @yaooqinn , @LuciferYang , @steveloughran , @viirya , @huaxin, @parthchandra , too.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2174374920

   Thank you, @Fokko and @wgtmac .


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2122475449

   Thanks for digging into this @rshkv, let's follow up on the Parquet side


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "LuciferYang (via GitHub)" <gi...@apache.org>.
LuciferYang commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175086631

   > val maxDef = if (inputValues.contains(null)) 1 else 0 
   >  val ty = parquetSchema.asGroupType().getType("a").asPrimitiveType() 
   >  val cd = new ColumnDescriptor(Seq("a").toArray, ty, 0, maxDef) 
   >  val repetitionLevels = Array.fill[Int](inputValues.length)(0) 
   >  val definitionLevels = inputValues.map(v => if (v == null) 0 else 1)
   
   @wgtmac Thank you for your explanation, it seems you are correct, should Line 505 be changed from 
   
   ```scala
    val definitionLevels = inputValues.map(v => if (v == null) 0 else 1) 
   ```
   to 
   
   ```scala
   val definitionLevels = inputValues.map(v => if (v == null) 0 else maxDef)
   ```
   
   ? I manually tested it, and this way `ParquetVectorizedSuite` can pass.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "LuciferYang (via GitHub)" <gi...@apache.org>.
LuciferYang commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175040708

   ```
   [info] - primitive type - no column index *** FAILED *** (12 milliseconds)
   [info]   java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
   [info]   at org.apache.parquet.column.statistics.SizeStatistics$Builder.add(SizeStatistics.java:83)
   [info]   at org.apache.parquet.column.statistics.SizeStatistics$Builder.add(SizeStatistics.java:95)
   [info]   at org.apache.parquet.column.impl.ColumnValueCollector.write(ColumnValueCollector.java:92)
   [info]   at org.apache.parquet.column.impl.ColumnWriterBase.write(ColumnWriterBase.java:197)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$writeDataPage$1(ParquetVectorizedSuite.scala:607)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$writeDataPage$1$adapted(ParquetVectorizedSuite.scala:591)
   [info]   at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:619)
   [info]   at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:617)
   [info]   at scala.collection.AbstractIterable.foreach(Iterable.scala:935)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.writeDataPage(ParquetVectorizedSuite.scala:591)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$testPrimitiveString$4(ParquetVectorizedSuite.scala:515)
   [info]   at scala.runtime.java8.JFunction1$mcVI$sp.apply(JFunction1$mcVI$sp.scala:18)
   [info]   at scala.collection.immutable.List.foreach(List.scala:334)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.testPrimitiveString(ParquetVectorizedSuite.scala:511)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$new$4(ParquetVectorizedSuite.scala:62)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$new$4$adapted(ParquetVectorizedSuite.scala:60)
   [info]   at scala.collection.immutable.List.foreach(List.scala:334)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$new$3(ParquetVectorizedSuite.scala:60)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$new$3$adapted(ParquetVectorizedSuite.scala:59)
   [info]   at scala.collection.immutable.List.foreach(List.scala:334)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$new$2(ParquetVectorizedSuite.scala:59)
   [info]   at scala.runtime.java8.JFunction1$mcVI$sp.apply(JFunction1$mcVI$sp.scala:18)
   [info]   at scala.collection.immutable.List.foreach(List.scala:334)
   [info]   at org.apache.spark.sql.execution.datasources.parquet.ParquetVectorizedSuite.$anonfun$new$1(ParquetVectorizedSuite.scala:58)
   ```
   
   1.14.1 still seem to have this error in writing statistics. Does this indicate an incompatibility?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "wgtmac (via GitHub)" <gi...@apache.org>.
wgtmac commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175097335

   (I have to admit that it is a little bit aggressive to enable a new feature by default on the parquet side, sigh)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "wgtmac (via GitHub)" <gi...@apache.org>.
wgtmac commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175056427

   Yes I know that. The exception is thrown when building size statistics, which is a new feature and has caught similar issues in the test cases of parquet-mr. So I'd suggest to check if the existing test violates the rule of `0 <= def_level <= max_def_level`.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "LuciferYang (via GitHub)" <gi...@apache.org>.
LuciferYang commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175050909

   > @LuciferYang Could you please check the test case? It seems to be writing `def_level=1` to a column with `max_def_level=0`.
   
   This is an existing test case in Spark, this error does not occur when using version 1.13.x.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun closed pull request #46447: [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1
URL: https://github.com/apache/spark/pull/46447


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2203945754

   Thanks @dongjoon-hyun for merging, and @LuciferYang and @sunchao for the pointers 👍 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2122983556

   Thank you, @rshkv and @Fokko .


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2099353902

   Thanks for pointing out @dongjoon-hyun. I've fixed it right away 👍 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "wgtmac (via GitHub)" <gi...@apache.org>.
wgtmac commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175048310

   @LuciferYang Could you please check the test case? It seems to be writing `def_level=1` to a column with `max_def_level=0`, which means it writes a null value to a non-null column.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2173833959

   Apache Parquet 1.14.1 has been released, thanks @wgtmac 🙌 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "dongjoon-hyun (via GitHub)" <gi...@apache.org>.
dongjoon-hyun commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2099344517

   Oh, it seems that wrong `target` folder files are added.
   
   FYI, this PR is supposed to have `pom.xml` and `dev/deps/spark-deps-hadoop-3-hive-2.3`.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2099354844

   I have to look into the tests 👀 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "sunchao (via GitHub)" <gi...@apache.org>.
sunchao commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2204544790

   The benchmark results look OK to me as well - there is no big deviation from the previous result. Thanks @Fokko for the PR!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "sunchao (via GitHub)" <gi...@apache.org>.
sunchao commented on code in PR #46447:
URL: https://github.com/apache/spark/pull/46447#discussion_r1663221944


##########
sql/core/benchmarks/DataSourceReadBenchmark-results.txt:
##########
@@ -1,431 +1,431 @@
-================================================================================================
+DataSourceReadBenchmark-jdk21-results.txt================================================================================================
 SQL Single Numeric Column Scan
 ================================================================================================
 
-OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1018-azure
+OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1022-azure
 AMD EPYC 7763 64-Core Processor
 SQL Single BOOLEAN Column Scan:           Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
 ------------------------------------------------------------------------------------------------------------------------
-SQL CSV                                           12156          12215          83          1.3         772.8       1.0X
-SQL Json                                           8033           8276         343          2.0         510.7       1.5X
-SQL Parquet Vectorized: DataPageV1                  104            119           8        151.4           6.6     117.0X
-SQL Parquet Vectorized: DataPageV2                  104            117          25        151.2           6.6     116.8X
-SQL Parquet MR: DataPageV1                         1795           1811          22          8.8         114.2       6.8X
-SQL Parquet MR: DataPageV2                         1728           1739          15          9.1         109.9       7.0X
-SQL ORC Vectorized                                  140            147           5        112.1           8.9      86.6X
-SQL ORC MR                                         1617           1617           0          9.7         102.8       7.5X
-
-OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1018-azure
+SQL CSV                                           10363          10364           2          1.5         658.9       1.0X
+SQL Json                                           8667           8699          46          1.8         551.0       1.2X
+SQL Parquet Vectorized: DataPageV1                  103            114           8        153.3           6.5     101.0X
+SQL Parquet Vectorized: DataPageV2                  101            111           6        155.4           6.4     102.4X
+SQL Parquet MR: DataPageV1                         1809           1813           6          8.7         115.0       5.7X
+SQL Parquet MR: DataPageV2                         1715           1720           8          9.2         109.0       6.0X
+SQL ORC Vectorized                                  139            146           5        113.1           8.8      74.5X
+SQL ORC MR                                         1508           1511           5         10.4          95.8       6.9X
+
+OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1022-azure
 AMD EPYC 7763 64-Core Processor
 Parquet Reader Single BOOLEAN Column Scan:   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
 ---------------------------------------------------------------------------------------------------------------------------
-ParquetReader Vectorized: DataPageV1                    94             95           1        166.6           6.0       1.0X
-ParquetReader Vectorized: DataPageV2                   101            103           2        155.3           6.4       0.9X
-ParquetReader Vectorized -> Row: DataPageV1             74             75           2        213.8           4.7       1.3X
-ParquetReader Vectorized -> Row: DataPageV2             81             83           1        193.2           5.2       1.2X
+ParquetReader Vectorized: DataPageV1                    88             90           2        178.9           5.6       1.0X
+ParquetReader Vectorized: DataPageV2                    95             96           1        166.2           6.0       0.9X
+ParquetReader Vectorized -> Row: DataPageV1             73             74           1        215.3           4.6       1.2X
+ParquetReader Vectorized -> Row: DataPageV2             81             83           1        193.1           5.2       1.1X
 
-OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1018-azure
+OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1022-azure
 AMD EPYC 7763 64-Core Processor
 SQL Single TINYINT Column Scan:           Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
 ------------------------------------------------------------------------------------------------------------------------
-SQL CSV                                           11407          11426          26          1.4         725.3       1.0X
-SQL Json                                           9654           9660           7          1.6         613.8       1.2X
-SQL Parquet Vectorized: DataPageV1                   91            100           7        172.0           5.8     124.7X
-SQL Parquet Vectorized: DataPageV2                   88             97           8        178.6           5.6     129.5X
-SQL Parquet MR: DataPageV1                         1913           1916           5          8.2         121.6       6.0X
-SQL Parquet MR: DataPageV2                         1868           1871           5          8.4         118.7       6.1X
-SQL ORC Vectorized                                  115            124           6        136.7           7.3      99.1X
-SQL ORC MR                                         1519           1523           6         10.4          96.6       7.5X
-
-OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1018-azure
+SQL CSV                                           11538          11589          73          1.4         733.5       1.0X
+SQL Json                                           9586           9596          14          1.6         609.5       1.2X
+SQL Parquet Vectorized: DataPageV1                  109            116           6        144.8           6.9     106.2X
+SQL Parquet Vectorized: DataPageV2                  110            118           8        142.6           7.0     104.6X
+SQL Parquet MR: DataPageV1                         1901           1953          74          8.3         120.9       6.1X
+SQL Parquet MR: DataPageV2                         1817           1832          22          8.7         115.5       6.4X
+SQL ORC Vectorized                                  118            126           7        133.6           7.5      98.0X
+SQL ORC MR                                         1505           1535          43         10.5          95.7       7.7X
+
+OpenJDK 64-Bit Server VM 17.0.11+9-LTS on Linux 6.5.0-1022-azure
 AMD EPYC 7763 64-Core Processor
 Parquet Reader Single TINYINT Column Scan:   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
 ---------------------------------------------------------------------------------------------------------------------------
-ParquetReader Vectorized: DataPageV1                    69             71           1        227.3           4.4       1.0X
-ParquetReader Vectorized: DataPageV2                    69             71           2        228.4           4.4       1.0X
-ParquetReader Vectorized -> Row: DataPageV1             47             48           1        332.4           3.0       1.5X
-ParquetReader Vectorized -> Row: DataPageV2             47             48           1        334.0           3.0       1.5X
+ParquetReader Vectorized: DataPageV1                    93             94           1        169.9           5.9       1.0X

Review Comment:
   I guess this is probably due to other factors. It's fine as long as the relative stay the same?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2176532761

   @LuciferYang Thanks for the pointer, I've updated the PR 👍 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "wgtmac (via GitHub)" <gi...@apache.org>.
wgtmac commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175062386

   These lines are suspicious: https://github.com/apache/spark/blob/05c87e51a5e50d1c156211848693b66937f12a8f/sql/core/src/test/scala/org/apache/spark/sql/execution/datasources/parquet/ParquetVectorizedSuite.scala#L501-L505
   
   If `inputValues` do not have any null, `maxDef` is set to 0. However, `definitionLevels` for non-null value is set to 1, which exactly violates the rule I mentioned.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.1 [spark]

Posted by "wgtmac (via GitHub)" <gi...@apache.org>.
wgtmac commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2175092903

   Yes, that change looks reasonable. Thanks for verification! @LuciferYang 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


Re: [PR] [SPARK-48177][BUILD] Upgrade `Apache Parquet` to 1.14.0 [spark]

Posted by "rshkv (via GitHub)" <gi...@apache.org>.
rshkv commented on PR #46447:
URL: https://github.com/apache/spark/pull/46447#issuecomment-2122440281

   I think the `toPrettyJson` errors seen here are reported in [PARQUET-2468](https://issues.apache.org/jira/browse/PARQUET-2468) and being addressed in https://github.com/apache/parquet-mr/pull/1349. We might have to wait for 1.14.1.
   ```
   Cause: java.lang.RuntimeException: shaded.parquet.com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class org.apache.parquet.schema.LogicalTypeAnnotation$StringLogicalTypeAnnotation and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: org.apache.parquet.hadoop.metadata.ParquetMetadata["fileMetaData"]->org.apache.parquet.hadoop.metadata.FileMetaData["schema"]->org.apache.parquet.schema.MessageType["fields"]->java.util.ArrayList[1]->org.apache.parquet.schema.PrimitiveType["logicalTypeAnnotation"])
   	at org.apache.parquet.hadoop.metadata.ParquetMetadata.toJSON(ParquetMetadata.java:68)
   	at org.apache.parquet.hadoop.metadata.ParquetMetadata.toPrettyJSON(ParquetMetadata.java:48)
   	at org.apache.parquet.format.converter.ParquetMetadataConverter.readParquetMetadata(ParquetMetadataConverter.java:1592)
   	at org.apache.parquet.hadoop.ParquetFileReader.readFooter(ParquetFileReader.java:629)
   ```
   
   ```
   Caused by: shaded.parquet.com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Java 8 optional type `java.util.Optional<java.lang.Long>` not supported by default: add Module "shaded.parquet.com.fasterxml.jackson.datatype:jackson-datatype-jdk8" to enable handling (through reference chain: org.apache.parquet.hadoop.metadata.ParquetMetadata["blocks"]->java.util.ArrayList[0]->org.apache.parquet.hadoop.metadata.BlockMetaData["columns"]->java.util.Collections$UnmodifiableRandomAccessList[0]->org.apache.parquet.hadoop.metadata.IntColumnChunkMetaData["sizeStatistics"]->org.apache.parquet.column.statistics.SizeStatistics["unencodedByteArrayDataBytes"])
   	at shaded.parquet.com.fasterxml.jackson.databind.exc.InvalidDefinitionException.from(InvalidDefinitionException.java:77)
   	...
   	at shaded.parquet.com.fasterxml.jackson.databind.ObjectWriter.writeValue(ObjectWriter.java:1114)
   	at org.apache.parquet.hadoop.metadata.ParquetMetadata.toJSON(ParquetMetadata.java:62)
   	at org.apache.parquet.hadoop.metadata.ParquetMetadata.toPrettyJSON(ParquetMetadata.java:48)
   	at org.apache.parquet.format.converter.ParquetMetadataConverter.readParquetMetadata(ParquetMetadataConverter.java:1592)
   	at org.apache.parquet.hadoop.ParquetFileReader.readFooter(ParquetFileReader.java:629)
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org