You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tez.apache.org by "Karel Kolman (Jira)" <ji...@apache.org> on 2021/04/28 01:25:00 UTC

[jira] [Commented] (TEZ-4295) Could not decompress data. Buffer length is too small.

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

Karel Kolman commented on TEZ-4295:
-----------------------------------

Seeing similar problems with Tez 0.10.0


{noformat}
Caused by: java.lang.InternalError: Could not decompress data. Buffer length is too small.
	at org.apache.hadoop.io.compress.snappy.SnappyDecompressor.decompressBytesDirect(Native Method)
	at org.apache.hadoop.io.compress.snappy.SnappyDecompressor.decompress(SnappyDecompressor.java:235)
	at org.apache.hadoop.io.compress.BlockDecompressorStream.decompress(BlockDecompressorStream.java:88)
	at org.apache.hadoop.io.compress.DecompressorStream.read(DecompressorStream.java:105)
	at org.apache.hadoop.io.compress.DecompressorStream.read(DecompressorStream.java:92)
	at java.io.DataInputStream.readByte(DataInputStream.java:265)
	at org.apache.hadoop.io.WritableUtils.readVLong(WritableUtils.java:308)
	at org.apache.hadoop.io.WritableUtils.readVInt(WritableUtils.java:329)
	at org.apache.tez.runtime.library.common.sort.impl.IFile$Reader.readKeyValueLength(IFile.java:937)
	at org.apache.tez.runtime.library.common.sort.impl.IFile$Reader.positionToNextRecord(IFile.java:967)
	at org.apache.tez.runtime.library.common.sort.impl.IFile$Reader.readRawKey(IFile.java:1008)
	at org.apache.tez.runtime.library.common.sort.impl.IFile$Reader.nextRawKey(IFile.java:989)
	at org.apache.tez.runtime.library.common.sort.impl.TezMerger$Segment.nextRawKey(TezMerger.java:317)
	at org.apache.tez.runtime.library.common.sort.impl.TezMerger$MergeQueue.merge(TezMerger.java:777)
	at org.apache.tez.runtime.library.common.sort.impl.TezMerger.merge(TezMerger.java:206)
	at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.MergeManager.finalMerge(MergeManager.java:1302)
	at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.MergeManager.close(MergeManager.java:668)
	at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.Shuffle$RunShuffleCallable.callInternal(Shuffle.java:308)
	... 6 more
{noformat}

and
{noformat}
Caused by: java.lang.ArrayIndexOutOfBoundsException
	at org.apache.hadoop.io.compress.snappy.SnappyCompressor.setInput(SnappyCompressor.java:104)
	at org.apache.hadoop.io.compress.BlockCompressorStream.write(BlockCompressorStream.java:112)
	at org.apache.hadoop.io.compress.CompressorStream.write(CompressorStream.java:118)
	at org.apache.hadoop.fs.FSDataOutputStream$PositionCache.write(FSDataOutputStream.java:48)
	at java.io.DataOutputStream.writeByte(DataOutputStream.java:153)
	at org.apache.hadoop.io.WritableUtils.writeVLong(WritableUtils.java:273)
	at org.apache.hadoop.io.WritableUtils.writeVInt(WritableUtils.java:253)
	at org.apache.tez.runtime.library.common.sort.impl.IFile$Writer.close(IFile.java:410)
	at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.MergeManager.finalMerge(MergeManager.java:1217)
	at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.MergeManager.close(MergeManager.java:668)
	at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.Shuffle$RunShuffleCallable.callInternal(Shuffle.java:308)
	... 6 more
{noformat}


> Could not decompress data. Buffer length is too small.
> ------------------------------------------------------
>
>                 Key: TEZ-4295
>                 URL: https://issues.apache.org/jira/browse/TEZ-4295
>             Project: Apache Tez
>          Issue Type: Bug
>    Affects Versions: 0.10.0
>            Reporter: junnan.yang
>            Priority: Major
>         Attachments: TEZ-4295.01.patch
>
>
> tez 使用snappy压缩方式时,会报错缓冲区太小:
> java.io.IOException: java.lang.InternalError: Could not decompress data. Buffer length is too small.java.io.IOException: java.lang.InternalError: Could not decompress data. Buffer length is too small. at org.apache.tez.runtime.library.common.shuffle.ShuffleUtils.shuffleToMemory(ShuffleUtils.java:137) at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.FetcherOrderedGrouped.copyMapOutput(FetcherOrderedGrouped.java:550) at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.FetcherOrderedGrouped.copyFromHost(FetcherOrderedGrouped.java:283) at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.FetcherOrderedGrouped.fetchNext(FetcherOrderedGrouped.java:182) at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.FetcherOrderedGrouped.callInternal(FetcherOrderedGrouped.java:194) at org.apache.tez.runtime.library.common.shuffle.orderedgrouped.FetcherOrderedGrouped.callInternal(FetcherOrderedGrouped.java:57) at org.apache.tez.common.CallableWithNdc.call(CallableWithNdc.java:36) at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:111) at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:58) at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:75) 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)Caused by: java.lang.InternalError: Could not decompress data. Buffer length is too small. at org.apache.hadoop.io.compress.snappy.SnappyDecompressor.decompressBytesDirect(Native Method) at org.apache.hadoop.io.compress.snappy.SnappyDecompressor.decompress(SnappyDecompressor.java:238) at org.apache.hadoop.io.compress.BlockDecompressorStream.decompress(BlockDecompressorStream.java:88) at org.apache.hadoop.io.compress.DecompressorStream.read(DecompressorStream.java:105) at org.apache.hadoop.io.IOUtils.readFully(IOUtils.java:210) at org.apache.tez.runtime.library.common.sort.impl.IFile$Reader.readToMemory(IFile.java:833) at org.apache.tez.runtime.library.common.shuffle.ShuffleUtils.shuffleToMemory(ShuffleUtils.java:121) ... 12 more



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