hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mukul Kumar Singh (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HDFS-13024) Ozone: ContainerStateMachine should synchronize operations between createContainer and writeChunk
Date Tue, 23 Jan 2018 06:05:00 GMT

     [ https://issues.apache.org/jira/browse/HDFS-13024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Mukul Kumar Singh updated HDFS-13024:
-------------------------------------
      Resolution: Fixed
    Hadoop Flags: Reviewed
          Status: Resolved  (was: Patch Available)

I have committed this to the feature branch.

> Ozone: ContainerStateMachine should synchronize operations between createContainer and
writeChunk
> -------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-13024
>                 URL: https://issues.apache.org/jira/browse/HDFS-13024
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: ozone
>    Affects Versions: HDFS-7240
>            Reporter: Mukul Kumar Singh
>            Assignee: Mukul Kumar Singh
>            Priority: Major
>             Fix For: HDFS-7240
>
>         Attachments: HDFS-13024-HDFS-7240.001.patch, HDFS-13024-HDFS-7240.002.patch,
HDFS-13024-HDFS-7240.003.patch, HDFS-13024-HDFS-7240.004.patch, HDFS-13024-HDFS-7240.005.patch,
HDFS-13024-HDFS-7240.006.patch, HDFS-13024-HDFS-7240.007.patch, HDFS-13024-HDFS-7240.008.patch
>
>
> This issue happens after HDFS-12853. with HDFS-12853, writeChunk op has been divided
into two stages 1) the log write phase (here the state machine data is written) 2) ApplyTransaction.
> With a 3 node ratis ring, ratis leader will append the log entry to its log and forward
it to its followers. However there is no guarantee on when the followers will apply the log
to the state machine in {{applyTransaction}}. 
> This issue happens in the following order
> 1) Leader accepts create container
> 2) Leader add entries to its logs and forwards to followers
> 3) Followers append the entry to its log and Ack to the raft leader (Please note that
the transaction still hasn't been applied)
> 4) Leader applies the transaction and now replies
> 5) write chunk call is sent to the Leader
> 6) Leader now forwards the call to the followers
> 7) Followers try to apply the log by calling {{Dispatcher#dispatch}} however the create
container call in 3) still hasn't been applied
> 8) write chunk call on followers fail.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org


Mime
View raw message