Hi steve Thx for help . We are on Hadoop3.2 ,however we are building Hadoop3.2 with Java 8 .
Do you suggest to build Hadoop with Java 11 Regards Pralabh kumar On Mon, 13 Jun 2022, 15:25 Steve Loughran, <ste...@cloudera.com> wrote: > > > On Mon, 13 Jun 2022 at 08:52, Pralabh Kumar <pralabhku...@gmail.com> > wrote: > >> Hi Dev team >> >> I have a spark32 image with Java 11 (Running Spark on K8s) . While >> reading a huge parquet file via spark.read.parquet("") . I am getting >> the following error . The same error is mentioned in Spark docs >> https://spark.apache.org/docs/latest/#downloading but w.r.t to apache >> arrow. >> >> >> - IMHO , I think the error is coming from Parquet 1.12.1 which is >> based on Hadoop 2.10 which is not java 11 compatible. >> >> > correct. see https://issues.apache.org/jira/browse/HADOOP-12760 > > > Please let me know if this understanding is correct and is there a way to >> fix it. >> > > > > upgrade to a version of hadoop with the fix. That's any version >= hadoop > 3.2.0 which shipped since 2018 > >> >> >> java.lang.NoSuchMethodError: 'sun.misc.Cleaner >> sun.nio.ch.DirectBuffer.cleaner()' >> >> at >> org.apache.hadoop.crypto.CryptoStreamUtils.freeDB(CryptoStreamUtils.java:41) >> >> at >> org.apache.hadoop.crypto.CryptoInputStream.freeBuffers(CryptoInputStream.java:687) >> >> at >> org.apache.hadoop.crypto.CryptoInputStream.close(CryptoInputStream.java:320) >> >> at java.base/java.io.FilterInputStream.close(Unknown Source) >> >> at >> org.apache.parquet.hadoop.util.H2SeekableInputStream.close(H2SeekableInputStream.java:50) >> >> at >> org.apache.parquet.hadoop.ParquetFileReader.close(ParquetFileReader.java:1299) >> >> at >> org.apache.spark.sql.execution.datasources.parquet.ParquetFooterReader.readFooter(ParquetFooterReader.java:54) >> >> at >> org.apache.spark.sql.execution.datasources.parquet.ParquetFooterReader.readFooter(ParquetFooterReader.java:44) >> >> at >> org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat$.$anonfun$readParquetFootersInParallel$1(ParquetFileFormat.scala:467) >> >> at >> org.apache.spark.util.ThreadUtils$.$anonfun$parmap$2(ThreadUtils.scala:372) >> >> at >> scala.concurrent.Future$.$anonfun$apply$1(Future.scala:659) >> >> at scala.util.Success.$anonfun$map$1(Try.scala:255) >> >> at scala.util.Success.map(Try.scala:213) >> >> at scala.concurrent.Future.$anonfun$map$1(Future.scala:292) >> >> at >> scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33) >> >> at >> scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33) >> >> at >> scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64) >> >> at >> java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown >> Source) >> >> at >> java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source) >> >> at >> java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown >> Source) >> >> at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown >> Source) >> >> at >> java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) >> >> at >> java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) >> >