[
https://issues.apache.org/jira/browse/HDFS-16099?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Shuyan Zhang updated HDFS-16099:
Description:
BPOfferService#bpServiceToActive is not volatile, which may cause
_CommandProcessingThread_ to get the out-of-date active namenode.
When a failover occurs, the old ANN's _CommandProcessingThread_ may read the
outdated BPOfferService#bpServiceToActive and execute the NN's command. At this
time, if the new ANN's _CommandProcessingThread_ reads the new value of
bpServiceToActive, split brain will occur; otherwise, the new ANN's commands
cannot be executed normally, which is also unacceptable.
was:BPOfferService#bpServiceToActive is not volatile, which may cause
_commandProcessingThread_ to get an out-of-date active namenode.
> Make bpServiceToActive to be volatile
> -
>
> Key: HDFS-16099
> URL: https://issues.apache.org/jira/browse/HDFS-16099
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: datanode
>Reporter: Shuyan Zhang
>Assignee: Shuyan Zhang
>Priority: Major
> Labels: pull-request-available
> Time Spent: 10m
> Remaining Estimate: 0h
>
> BPOfferService#bpServiceToActive is not volatile, which may cause
> _CommandProcessingThread_ to get the out-of-date active namenode.
> When a failover occurs, the old ANN's _CommandProcessingThread_ may read the
> outdated BPOfferService#bpServiceToActive and execute the NN's command. At
> this time, if the new ANN's _CommandProcessingThread_ reads the new value of
> bpServiceToActive, split brain will occur; otherwise, the new ANN's commands
> cannot be executed normally, which is also unacceptable.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
-
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org