[ 
https://issues.apache.org/jira/browse/HADOOP-17891?focusedWorklogId=647498&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-647498
 ]

ASF GitHub Bot logged work on HADOOP-17891:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 07/Sep/21 17:42
            Start Date: 07/Sep/21 17:42
    Worklog Time Spent: 10m 
      Work Description: sunchao commented on pull request #3385:
URL: https://github.com/apache/hadoop/pull/3385#issuecomment-914498585


   @viirya `hadoop-client-check-invariants` failed:
   ```
   [INFO] --- maven-dependency-plugin:3.0.2:build-classpath 
(put-client-artifacts-in-a-property) @ hadoop-client-check-invariants ---
   [INFO] Dependencies classpath:
   
/home/jenkins/jenkins-agent/workspace/hadoop-multibranch_PR-3385/ubuntu-focal/src/hadoop-client-modules/hadoop-client-runtime/target/hadoop-client-runtime-3.4.0-SNAPSHOT.jar;/home/jenkins/jenkins-agent/workspace/hadoop-multibranch_PR-3385/ubuntu-focal/src/hadoop-client-modules/hadoop-client-api/target/hadoop-client-api-3.4.0-SNAPSHOT.jar
   [INFO] 
   [INFO] --- exec-maven-plugin:1.3.1:exec (check-jar-contents) @ 
hadoop-client-check-invariants ---
   [ERROR] Found artifact with unexpected contents: 
'/home/jenkins/jenkins-agent/workspace/hadoop-multibranch_PR-3385/ubuntu-focal/src/hadoop-client-modules/hadoop-client-runtime/target/hadoop-client-runtime-3.4.0-SNAPSHOT.jar'
       Please check the following and either correct the build or update
       the allowed list with reasoning.
   
       org/xerial/
       org/xerial/snappy/
       org/xerial/snappy/BitShuffle.class
       org/xerial/snappy/BitShuffleNative.class
       org/xerial/snappy/BitShuffleType.class
       org/xerial/snappy/OSInfo.class
       org/xerial/snappy/PureJavaCrc32C.class
       org/xerial/snappy/Snappy.class
       org/xerial/snappy/SnappyApi.class
       org/xerial/snappy/SnappyBundleActivator.class
       org/xerial/snappy/SnappyCodec.class
       org/xerial/snappy/SnappyError.class
       org/xerial/snappy/SnappyErrorCode.class
       org/xerial/snappy/SnappyException.class
       org/xerial/snappy/SnappyFramed.class
       org/xerial/snappy/SnappyFramedInputStream$FrameAction.class
       org/xerial/snappy/SnappyFramedInputStream$FrameData.class
       org/xerial/snappy/SnappyFramedInputStream$FrameMetaData.class
       org/xerial/snappy/SnappyFramedInputStream.class
       org/xerial/snappy/SnappyFramedOutputStream.class
       org/xerial/snappy/SnappyHadoopCompatibleOutputStream.class
       org/xerial/snappy/SnappyIOException.class
       org/xerial/snappy/SnappyInputStream.class
       org/xerial/snappy/SnappyLoader.class
       org/xerial/snappy/SnappyNative.class
       org/xerial/snappy/SnappyOutputStream.class
       org/xerial/snappy/VERSION
       org/xerial/snappy/VERSION~
       org/xerial/snappy/buffer/
       org/xerial/snappy/buffer/BufferAllocator.class
       org/xerial/snappy/buffer/BufferAllocatorFactory.class
       org/xerial/snappy/buffer/CachedBufferAllocator$1.class
       org/xerial/snappy/buffer/CachedBufferAllocator.class
       org/xerial/snappy/buffer/DefaultBufferAllocator$1.class
       org/xerial/snappy/buffer/DefaultBufferAllocator.class
       org/xerial/snappy/native/
       org/xerial/snappy/native/AIX/
       org/xerial/snappy/native/AIX/ppc/
       org/xerial/snappy/native/AIX/ppc/libsnappyjava.a
       org/xerial/snappy/native/AIX/ppc64/
       org/xerial/snappy/native/AIX/ppc64/libsnappyjava.a
       org/xerial/snappy/native/FreeBSD/
       org/xerial/snappy/native/FreeBSD/x86_64/
       org/xerial/snappy/native/FreeBSD/x86_64/libsnappyjava.so
       org/xerial/snappy/native/Linux/
       org/xerial/snappy/native/Linux/aarch64/
       org/xerial/snappy/native/Linux/aarch64/libsnappyjava.so
       org/xerial/snappy/native/Linux/android-arm/
       org/xerial/snappy/native/Linux/android-arm/libsnappyjava.so
       org/xerial/snappy/native/Linux/arm/
       org/xerial/snappy/native/Linux/arm/libsnappyjava.so
       org/xerial/snappy/native/Linux/armv6/
       org/xerial/snappy/native/Linux/armv6/libsnappyjava.so
       org/xerial/snappy/native/Linux/armv7/
       org/xerial/snappy/native/Linux/armv7/libsnappyjava.so
       org/xerial/snappy/native/Linux/ppc/
       org/xerial/snappy/native/Linux/ppc/libsnappyjava.so
       org/xerial/snappy/native/Linux/ppc64/
       org/xerial/snappy/native/Linux/ppc64/libsnappyjava.so
       org/xerial/snappy/native/Linux/ppc64le/
       org/xerial/snappy/native/Linux/ppc64le/libsnappyjava.so
       org/xerial/snappy/native/Linux/s390x/
       org/xerial/snappy/native/Linux/s390x/libsnappyjava.so
       org/xerial/snappy/native/Linux/x86/
       org/xerial/snappy/native/Linux/x86/libsnappyjava.so
       org/xerial/snappy/native/Linux/x86_64/
       org/xerial/snappy/native/Linux/x86_64/libsnappyjava.so
       org/xerial/snappy/native/Mac/
       org/xerial/snappy/native/Mac/aarch64/
       org/xerial/snappy/native/Mac/aarch64/libsnappyjava.dylib
       org/xerial/snappy/native/Mac/x86/
       org/xerial/snappy/native/Mac/x86/libsnappyjava.jnilib
       org/xerial/snappy/native/Mac/x86_64/
       org/xerial/snappy/native/Mac/x86_64/libsnappyjava.dylib
       org/xerial/snappy/native/README
       org/xerial/snappy/native/SunOS/
       org/xerial/snappy/native/SunOS/sparc/
       org/xerial/snappy/native/SunOS/sparc/libsnappyjava.so
       org/xerial/snappy/native/SunOS/x86/
       org/xerial/snappy/native/SunOS/x86/libsnappyjava.so
       org/xerial/snappy/native/SunOS/x86_64/
       org/xerial/snappy/native/SunOS/x86_64/libsnappyjava.so
       org/xerial/snappy/native/Windows/
       org/xerial/snappy/native/Windows/x86/
       org/xerial/snappy/native/Windows/x86/snappyjava.dll
       org/xerial/snappy/native/Windows/x86_64/
       org/xerial/snappy/native/Windows/x86_64/snappyjava.dll
       org/xerial/snappy/pool/
       org/xerial/snappy/pool/BufferPool.class
       org/xerial/snappy/pool/CachingBufferPool$1.class
       org/xerial/snappy/pool/CachingBufferPool$2.class
       org/xerial/snappy/pool/CachingBufferPool$IntFunction.class
       org/xerial/snappy/pool/CachingBufferPool.class
       org/xerial/snappy/pool/DefaultPoolFactory.class
       org/xerial/snappy/pool/DirectByteBuffers$1.class
       org/xerial/snappy/pool/DirectByteBuffers$2.class
       org/xerial/snappy/pool/DirectByteBuffers.class
       org/xerial/snappy/pool/QuiescentBufferPool.class
       org/xerial/snappy/pure/
       org/xerial/snappy/pure/PureJavaSnappy.class
       org/xerial/snappy/pure/SnappyConstants.class
       org/xerial/snappy/pure/SnappyRawCompressor.class
       org/xerial/snappy/pure/SnappyRawDecompressor.class
       org/xerial/snappy/pure/UnsafeUtil.class
   [ERROR] Found artifact with unexpected contents: 
'/home/jenkins/jenkins-agent/workspace/hadoop-multibranch_PR-3385/ubuntu-focal/src/hadoop-client-modules/hadoop-client-api/target/hadoop-client-api-3.4.0-SNAPSHOT.jar'
       Please check the following and either correct the build or update
       the allowed list with reasoning.
   
       org/xerial/
       org/xerial/snappy/
       org/xerial/snappy/BitShuffle.class
       org/xerial/snappy/BitShuffleNative.class
       org/xerial/snappy/BitShuffleType.class
       org/xerial/snappy/OSInfo.class
       org/xerial/snappy/PureJavaCrc32C.class
       org/xerial/snappy/Snappy.class
       org/xerial/snappy/SnappyApi.class
       org/xerial/snappy/SnappyBundleActivator.class
       org/xerial/snappy/SnappyCodec.class
       org/xerial/snappy/SnappyError.class
       org/xerial/snappy/SnappyErrorCode.class
       org/xerial/snappy/SnappyException.class
       org/xerial/snappy/SnappyFramed.class
       org/xerial/snappy/SnappyFramedInputStream$FrameAction.class
       org/xerial/snappy/SnappyFramedInputStream$FrameData.class
       org/xerial/snappy/SnappyFramedInputStream$FrameMetaData.class
       org/xerial/snappy/SnappyFramedInputStream.class
       org/xerial/snappy/SnappyFramedOutputStream.class
       org/xerial/snappy/SnappyHadoopCompatibleOutputStream.class
       org/xerial/snappy/SnappyIOException.class
       org/xerial/snappy/SnappyInputStream.class
       org/xerial/snappy/SnappyLoader.class
       org/xerial/snappy/SnappyNative.class
       org/xerial/snappy/SnappyOutputStream.class
       org/xerial/snappy/VERSION
       org/xerial/snappy/VERSION~
       org/xerial/snappy/buffer/
       org/xerial/snappy/buffer/BufferAllocator.class
       org/xerial/snappy/buffer/BufferAllocatorFactory.class
       org/xerial/snappy/buffer/CachedBufferAllocator$1.class
       org/xerial/snappy/buffer/CachedBufferAllocator.class
       org/xerial/snappy/buffer/DefaultBufferAllocator$1.class
       org/xerial/snappy/buffer/DefaultBufferAllocator.class
       org/xerial/snappy/native/
       org/xerial/snappy/native/AIX/
       org/xerial/snappy/native/AIX/ppc/
       org/xerial/snappy/native/AIX/ppc/libsnappyjava.a
       org/xerial/snappy/native/AIX/ppc64/
       org/xerial/snappy/native/AIX/ppc64/libsnappyjava.a
       org/xerial/snappy/native/FreeBSD/
       org/xerial/snappy/native/FreeBSD/x86_64/
       org/xerial/snappy/native/FreeBSD/x86_64/libsnappyjava.so
       org/xerial/snappy/native/Linux/
       org/xerial/snappy/native/Linux/aarch64/
       org/xerial/snappy/native/Linux/aarch64/libsnappyjava.so
       org/xerial/snappy/native/Linux/android-arm/
       org/xerial/snappy/native/Linux/android-arm/libsnappyjava.so
       org/xerial/snappy/native/Linux/arm/
       org/xerial/snappy/native/Linux/arm/libsnappyjava.so
       org/xerial/snappy/native/Linux/armv6/
       org/xerial/snappy/native/Linux/armv6/libsnappyjava.so
       org/xerial/snappy/native/Linux/armv7/
       org/xerial/snappy/native/Linux/armv7/libsnappyjava.so
       org/xerial/snappy/native/Linux/ppc/
       org/xerial/snappy/native/Linux/ppc/libsnappyjava.so
       org/xerial/snappy/native/Linux/ppc64/
       org/xerial/snappy/native/Linux/ppc64/libsnappyjava.so
       org/xerial/snappy/native/Linux/ppc64le/
       org/xerial/snappy/native/Linux/ppc64le/libsnappyjava.so
       org/xerial/snappy/native/Linux/s390x/
       org/xerial/snappy/native/Linux/s390x/libsnappyjava.so
       org/xerial/snappy/native/Linux/x86/
       org/xerial/snappy/native/Linux/x86/libsnappyjava.so
       org/xerial/snappy/native/Linux/x86_64/
       org/xerial/snappy/native/Linux/x86_64/libsnappyjava.so
       org/xerial/snappy/native/Mac/
       org/xerial/snappy/native/Mac/aarch64/
       org/xerial/snappy/native/Mac/aarch64/libsnappyjava.dylib
       org/xerial/snappy/native/Mac/x86/
       org/xerial/snappy/native/Mac/x86/libsnappyjava.jnilib
       org/xerial/snappy/native/Mac/x86_64/
       org/xerial/snappy/native/Mac/x86_64/libsnappyjava.dylib
       org/xerial/snappy/native/README
       org/xerial/snappy/native/SunOS/
       org/xerial/snappy/native/SunOS/sparc/
       org/xerial/snappy/native/SunOS/sparc/libsnappyjava.so
       org/xerial/snappy/native/SunOS/x86/
       org/xerial/snappy/native/SunOS/x86/libsnappyjava.so
       org/xerial/snappy/native/SunOS/x86_64/
       org/xerial/snappy/native/SunOS/x86_64/libsnappyjava.so
       org/xerial/snappy/native/Windows/
       org/xerial/snappy/native/Windows/x86/
       org/xerial/snappy/native/Windows/x86/snappyjava.dll
       org/xerial/snappy/native/Windows/x86_64/
       org/xerial/snappy/native/Windows/x86_64/snappyjava.dll
       org/xerial/snappy/pool/
       org/xerial/snappy/pool/BufferPool.class
       org/xerial/snappy/pool/CachingBufferPool$1.class
       org/xerial/snappy/pool/CachingBufferPool$2.class
       org/xerial/snappy/pool/CachingBufferPool$IntFunction.class
       org/xerial/snappy/pool/CachingBufferPool.class
       org/xerial/snappy/pool/DefaultPoolFactory.class
       org/xerial/snappy/pool/DirectByteBuffers$1.class
       org/xerial/snappy/pool/DirectByteBuffers$2.class
       org/xerial/snappy/pool/DirectByteBuffers.class
       org/xerial/snappy/pool/QuiescentBufferPool.class
       org/xerial/snappy/pure/
       org/xerial/snappy/pure/PureJavaSnappy.class
       org/xerial/snappy/pure/SnappyConstants.class
       org/xerial/snappy/pure/SnappyRawCompressor.class
       org/xerial/snappy/pure/SnappyRawDecompressor.class
       org/xerial/snappy/pure/UnsafeUtil.class
   ```
   
   you'll need to check the build artifacts for the log


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 647498)
    Time Spent: 2h 10m  (was: 2h)

> lz4-java and snappy-java should be excluded from relocation in shaded Hadoop 
> libraries
> --------------------------------------------------------------------------------------
>
>                 Key: HADOOP-17891
>                 URL: https://issues.apache.org/jira/browse/HADOOP-17891
>             Project: Hadoop Common
>          Issue Type: Bug
>            Reporter: L. C. Hsieh
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> lz4-java is a provided dependency. So in the shaded Hadoop libraries, e.g. 
> hadoop-client-api, if we don't exclude lz4 dependency, the downstream will 
> still see the exception even they include lz4 dependency.
> {code:java}
> [info]   Cause: java.lang.ClassNotFoundException: 
> org.apache.hadoop.shaded.net.jpountz.lz4.LZ4Factory
> [info]   at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
> [info]   at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
> [info]   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
> [info]   at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
> [info]   at 
> org.apache.hadoop.io.compress.lz4.Lz4Compressor.<init>(Lz4Compressor.java:66)
> [info]   at 
> org.apache.hadoop.io.compress.Lz4Codec.createCompressor(Lz4Codec.java:119)
> [info]   at 
> org.apache.hadoop.io.compress.CodecPool.getCompressor(CodecPool.java:152)
> [info]   at 
> org.apache.hadoop.io.compress.CodecPool.getCompressor(CodecPool.java:168)
>  {code}
> Currently snappy-java is included and relocated in Hadoop shaded client 
> libraries. But as it includes native methods, it should not be relocated too 
> due to JNI method resolution. The downstream will see the exception:
> {code}
> [info]   Cause: java.lang.UnsatisfiedLinkError: 
> org.apache.hadoop.shaded.org.xerial.snappy.SnappyNative.rawCompress(Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;I)I
> [info]   at 
> org.apache.hadoop.shaded.org.xerial.snappy.SnappyNative.rawCompress(Native 
> Method)                                                                       
>                           
> [info]   at 
> org.apache.hadoop.shaded.org.xerial.snappy.Snappy.compress(Snappy.java:151)   
>                                                                               
>                        
> [info]   at 
> org.apache.hadoop.io.compress.snappy.SnappyCompressor.compressDirectBuf(SnappyCompressor.java:282)
> [info]   at 
> org.apache.hadoop.io.compress.snappy.SnappyCompressor.compress(SnappyCompressor.java:210)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to