[
https://issues.apache.org/jira/browse/HDDS-629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16649192#comment-16649192
]
Jitendra Nath Pandey commented on HDDS-629:
-------------------------------------------
# In ChunkUtils.java, the chunkfile is being truncated to zero length. It is
possible that the chunk being overwritten starts from an offset. The code
assumes that every chunkInfo is for a new file and offset is always zero.
** Is added TODO statement meant for the above?
# In BlockManagerImpl.java, the blockCommitSequenceId in the data is being
used as the key, to lookup the bcs in the container. I think the key should be
{{OzoneConsts.BLOCK_COMMIT_SEQUENCE_ID_PREFIX.}}
# In ChunkManagerImpl#writeChunk, the check {{(!isOverwrite &&
chunkFile.exists())}} is confusing. We need to crisply define the contract of
method {{validateChunkForOverwrite}}. If it returns false, that means it is not
an overwrite situation at all, or does it mean overwrite is not allowed. In
any, case it should be honored. {{isOverWriteRequested}} already checks if
chunkFile exists. Ideally, we should not need to check for it again.
> Make ApplyTransaction calls in ContainerStateMachine idempotent
> ---------------------------------------------------------------
>
> Key: HDDS-629
> URL: https://issues.apache.org/jira/browse/HDDS-629
> Project: Hadoop Distributed Data Store
> Issue Type: Bug
> Reporter: Shashikant Banerjee
> Assignee: Shashikant Banerjee
> Priority: Major
> Attachments: HDDS-629.000.patch, HDDS-629.001.patch
>
>
> When a Datanode restarts, it may lead up to a case where it can reapply
> already applied Transactions when it joins the pipeline again . For this
> requirement, all ApplyTransaction calls in Ratis need to be made idempotent
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]