[ https://issues.apache.org/jira/browse/HDFS-10138?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vinayakumar B deleted HDFS-10138: --------------------------------- > CLONE - Erasure Coding: fix one cell need two packets > ----------------------------------------------------- > > Key: HDFS-10138 > URL: https://issues.apache.org/jira/browse/HDFS-10138 > Project: Hadoop HDFS > Issue Type: Sub-task > Reporter: dragon > Assignee: Walter Su > > The default WritePacketSize is 64k > Currently default cellSize is 64k > We hope one cell consumes one packet. In fact it's not. > By default, > chunkSize = 516( 512 data + 4 checksum) > packetSize = 64k > chunksPerPacket = 126 ( See DFSOutputStream#computePacketChunkSize for > details) > numBytes of data in one packet = 64512 > cellSize = 65536 > When first packet is full ( with 64512 data), there are still 65536 - 64512 = > 1024 bytes left. > {code} > super.writeChunk(bytes, offset, len, checksum, ckoff, cklen); > // cell is full and current packet has not been enqueued, > if (cellFull && currentPacket != null) { > enqueueCurrentPacketFull(); > } > {code} > When the last 1024 bytes of the cell was written, we meet {{cellFull}} and > create another packet. -- This message was sent by Atlassian JIRA (v6.3.4#6332)