Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
None
-
None
Description
The BlockManager interface defines API :
/** * Puts or overwrites a block. * * @param container - Container for which block need to be added. * @param data - Block Data. * @param incrKeyCount - Whether to increase container key count. * @return length of the Block. * @throws IOException */ long putBlock(Container container, BlockData data, boolean incrKeyCount) throws IOException;
whereas BlockManagerImpl has:
/** * Puts or overwrites a block. * * @param container - Container for which block need to be added. * @param data - BlockData. * @param endOfBlock - The last putBlock call for this block (when * all the chunks are written and stream is closed) * @return length of the block. * @throws IOException */ @Override public long putBlock(Container container, BlockData data, boolean endOfBlock) throws IOException {
That is, the last parameter is inconsistent (incrKeyCount vs. endOfBlock)
IMO the javadoc in BlockManagerImpl more accurately reflects what it's supposed to do.
Attachments
Issue Links
- is related to
-
HDDS-5359 Incorrect BLOCKCOUNT and BYTESUSED in container DB
- Resolved
- links to