[ 
https://issues.apache.org/jira/browse/HADOOP-19334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18040424#comment-18040424
 ] 

ASF GitHub Bot commented on HADOOP-19334:
-----------------------------------------

myandpr opened a new pull request, #7156:
URL: https://github.com/apache/hadoop/pull/7156

   <!--
     Thanks for sending a pull request!
       1. If this is your first time, please read our contributor guidelines: 
https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute
       2. Make sure your PR title starts with JIRA issue id, e.g., 
'HADOOP-17799. Your PR title ...'.
   -->
   
   ### Description of PR
   
   JIRA: [HADOOP-19334](https://issues.apache.org/jira/browse/HADOOP-19334). 
Remove usage of sun.misc.Unsafe
   
   Fix compilation errors during the upgrade process, because sun.misc is not 
supported after jdk11.
   
   We can replace sun.misc.Unsafe.
   
   
   
   ### How was this patch tested?
   exist ut test
   
   ### For code changes:
   
   replace sun.misc.Unsafe
   




> Remove usage of sun.misc.Unsafe
> -------------------------------
>
>                 Key: HADOOP-19334
>                 URL: https://issues.apache.org/jira/browse/HADOOP-19334
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: build
>            Reporter: yanmin
>            Priority: Major
>              Labels: pull-request-available
>
> According to [JEP 471|https://openjdk.org/jeps/471], sun.misc.Unsafe becomes 
> deprecated for removal in Java 23. So, the JDK versions before 23 should be 
> able to use it. The problem in the original description probably was due to 
> the Java 9 module problem (need the new --add-exports / --add-opens command 
> line options).
> It is good to remove the use of Unsafe.  Just want to clarify the reported 
> problem.
> ----
> h3. Original description
> when we build hadoop in JDK11 runtime based on 
> [HADOOP-19298|https://github.com/apache/hadoop/pull/7085] , JDK11 build is 
> failing as flowing due to: {{package sun.misc does not exist}} in.
>  
> This is because that package sun.misc is not supported after jdk11.
>  
> The purpose of this JIRA is to replace the .misc.Unsafe.
> related java class:
> {code:java}
> NativeIO.java
> FastByteComparisons.java
> AbstractFuture.java
> ShortCircuitShm.java {code}
>  
> {code:java}
> [ERROR] Failed to execute goal 
> org.apache.maven.plugins:maven-compiler-plugin:3.10.1:compile 
> (default-compile) on project hadoop-common: Compilation failure: Compilation 
> failure: 
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[22,16]
>  package sun.misc does not exist
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[23,16]
>  package sun.misc does not exist
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[44,43]
>  cannot find symbol
> [ERROR]   symbol:   class SignalHandler
> [ERROR]   location: class org.apache.hadoop.util.SignalLogger
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[46,19]
>  cannot find symbol
> [ERROR]   symbol:   class SignalHandler
> [ERROR]   location: class org.apache.hadoop.util.SignalLogger.Handler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[59,24]
>  cannot find symbol
> [ERROR]   symbol:   class Signal
> [ERROR]   location: class org.apache.hadoop.util.SignalLogger.Handler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[26,16]
>  package sun.misc does not exist
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[27,16]
>  package sun.misc does not exist
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[42,42]
>  cannot find symbol
> [ERROR]   symbol: class SignalHandler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[71,11]
>  cannot find symbol
> [ERROR]   symbol:   class Signal
> [ERROR]   location: class org.apache.hadoop.service.launcher.IrqHandler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[126,22]
>  cannot find symbol
> [ERROR]   symbol:   class Signal
> [ERROR]   location: class org.apache.hadoop.service.launcher.IrqHandler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/nativeio/NativeIO.java:[48,16]
>  package sun.misc does not exist
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/FastByteComparisons.java:[27,16]
>  package sun.misc does not exist
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/FastByteComparisons.java:[134,20]
>  cannot find symbol
> [ERROR]   symbol:   class Unsafe
> [ERROR]   location: class 
> org.apache.hadoop.io.FastByteComparisons.LexicographicalComparerHolder.UnsafeComparer
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[50,39]
>  cannot find symbol
> [ERROR]   symbol:   class Signal
> [ERROR]   location: class org.apache.hadoop.util.SignalLogger.Handler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[50,21]
>  cannot find symbol
> [ERROR]   symbol:   variable Signal
> [ERROR]   location: class org.apache.hadoop.util.SignalLogger.Handler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java:[58,5]
>  method does not override or implement a method from a supertype
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[92,20]
>  cannot find symbol
> [ERROR]   symbol:   class Signal
> [ERROR]   location: class org.apache.hadoop.service.launcher.IrqHandler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[93,7]
>  cannot find symbol
> [ERROR]   symbol:   variable Signal
> [ERROR]   location: class org.apache.hadoop.service.launcher.IrqHandler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[113,5]
>  cannot find symbol
> [ERROR]   symbol:   variable Signal
> [ERROR]   location: class org.apache.hadoop.service.launcher.IrqHandler
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/service/launcher/IrqHandler.java:[125,3]
>  method does not override or implement a method from a supertype
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/nativeio/NativeIO.java:[901,17]
>  cannot find symbol
> [ERROR]   symbol:   class Unsafe
> [ERROR]   location: class org.apache.hadoop.io.nativeio.NativeIO
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/nativeio/NativeIO.java:[903,7]
>  cannot find symbol
> [ERROR]   symbol:   class Unsafe
> [ERROR]   location: class org.apache.hadoop.io.nativeio.NativeIO
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/nativeio/NativeIO.java:[903,24]
>  cannot find symbol
> [ERROR]   symbol:   class Unsafe
> [ERROR]   location: class org.apache.hadoop.io.nativeio.NativeIO
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/FastByteComparisons.java:[140,22]
>  cannot find symbol
> [ERROR]   symbol:   class Unsafe
> [ERROR]   location: class 
> org.apache.hadoop.io.FastByteComparisons.LexicographicalComparerHolder.UnsafeComparer
> [ERROR] 
> /hadoop/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/FastByteComparisons.java:[145,29]
>  cannot find symbol
> [ERROR]   symbol: class Unsafe
> [ERROR] -> [Help 1]
> [ERROR] 
> [ERROR] To see the full stack trace of the errors, re-run Maven with the -e 
> switch.
> [ERROR] Re-run Maven using the -X switch to enable full debug logging.
> [ERROR] 
> [ERROR] For more information about the errors and possible solutions, please 
> read the following articles:
> [ERROR] [Help 1] 
> http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
> [ERROR] 
> [ERROR] After correcting the problems, you can resume the build with the 
> command
> [ERROR]   mvn <args> -rf :hadoop-common {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to