[
https://issues.apache.org/jira/browse/TEZ-4234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17202544#comment-17202544
]
László Bodor edited comment on TEZ-4234 at 9/26/20, 2:41 PM:
-------------------------------------------------------------
[~gopalv]: I'm not 100% sure, but seems like the case you mentioned applies
also to built-in zlib. With [^TEZ-4234.wip.patch] , I can see this on the
console ([written
here|https://github.com/apache/tez/blob/master/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/sort/impl/TestIFile.java#L980-L981]),
wondering if this is the same behavior you mentioned:
{code}
2020-09-26 09:53:29,877 INFO [main] impl.TestIFile
(TestIFile.java:writeTestFile(962)) - Uncompressed: 36
2020-09-26 09:53:29,877 INFO [main] impl.TestIFile
(TestIFile.java:writeTestFile(963)) - CompressedSize: 46
{code}
UPDATE: [^TEZ-4234.repro.patch] reproduces the issue
I've set hadoop native library to my local hadoop 3.1.3 build in order to get
native lz4 codec:
{code}
-Djava.library.path=/Users/lbodor/apache/hadoop/hadoop-dist/target/hadoop-3.1.3/lib/native
{code}
previously bulit hadoop with:
{code}
git checkout branch-3.1.3
mvn clean install -Pdist,native -DskipTests -Dtar -Dmaven.javadoc.skip=true
{code}
was (Author: abstractdog):
[~gopalv]: I'm not 100% sure, but seems like the case you mentioned applies
also to built-in zlib. With [^TEZ-4234.wip.patch] , I can see this on the
console ([written
here|https://github.com/apache/tez/blob/master/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/sort/impl/TestIFile.java#L980-L981]),
wondering if this is the same behavior you mentioned:
{code}
2020-09-26 09:53:29,877 INFO [main] impl.TestIFile
(TestIFile.java:writeTestFile(962)) - Uncompressed: 36
2020-09-26 09:53:29,877 INFO [main] impl.TestIFile
(TestIFile.java:writeTestFile(963)) - CompressedSize: 46
{code}
UPDATE: [^TEZ-4234.repro.patch] reproduces the issue
I've set hadoop native library to may local hadoop 3.1.3 build in order to get
native lz4 codec:
{code}
-Djava.library.path=/Users/lbodor/apache/hadoop/hadoop-dist/target/hadoop-3.1.3/lib/native
{code}
bulit hadoop with:
{code}
git checkout branch-3.1.3
mvn clean install -Pdist,native -DskipTests -Dtar -Dmaven.javadoc.skip=true
{code}
> Compressor can cause IllegalArgumentException in Buffer.limit where limit
> exceeds capacity
> ------------------------------------------------------------------------------------------
>
> Key: TEZ-4234
> URL: https://issues.apache.org/jira/browse/TEZ-4234
> Project: Apache Tez
> Issue Type: Bug
> Reporter: Jonathan Turner Eagles
> Priority: Blocker
> Attachments: TEZ-4234.repro.patch, TEZ-4234.wip.patch
>
>
> {code}
> java.lang.IllegalArgumentException
> at java.nio.Buffer.limit(Buffer.java:275)
> at
> org.apache.hadoop.io.compress.lz4.Lz4Compressor.compress(Lz4Compressor.java:240)
> at
> org.apache.hadoop.io.compress.BlockCompressorStream.compress(BlockCompressorStream.java:149)
> at
> org.apache.hadoop.io.compress.BlockCompressorStream.write(BlockCompressorStream.java:131)
> at
> org.apache.hadoop.fs.FSDataOutputStream$PositionCache.write(FSDataOutputStream.java:58)
> at java.io.DataOutputStream.write(DataOutputStream.java:107)
> at
> org.apache.tez.runtime.library.common.sort.impl.IFile$Writer.writeKVPair(IFile.java:423)
> at
> org.apache.tez.runtime.library.common.sort.impl.IFile$Writer.append(IFile.java:392)
> at
> org.apache.tez.runtime.library.common.sort.impl.dflt.DefaultSorter.spill(DefaultSorter.java:927)
> at
> org.apache.tez.runtime.library.common.sort.impl.dflt.DefaultSorter.sortAndSpill(DefaultSorter.java:865)
> at
> org.apache.tez.runtime.library.common.sort.impl.dflt.DefaultSorter.flush(DefaultSorter.java:729)
> at
> org.apache.tez.runtime.library.output.OrderedPartitionedKVOutput.close(OrderedPartitionedKVOutput.java:191)
> at
> org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.close(LogicalIOProcessorRuntimeTask.java:398)
> at
> org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:83)
> at
> org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:61)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:422)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:2035)
> at
> org.apache.tez.runtime.task.TaskRunner2Callable.callInternal(TaskRunner2Callable.java:61)
> at
> org.apache.tez.runtime.task.TaskRunner2Callable.callInternal(TaskRunner2Callable.java:37)
> at org.apache.tez.common.CallableWithNdc.call(CallableWithNdc.java:36)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)