[ https://issues.apache.org/jira/browse/HDFS-14660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16890315#comment-16890315 ]
Chao Sun commented on HDFS-14660: --------------------------------- {quote}Now what I think, even if ObserverProxyProvider is set, and the client hasn't done msync, now the request goes to the Active, rather than from the observer? Earlier which used to go to observer and used to get served irrespective of the state at which the observer is. Maybe I need to check again. Correct me if wrong. {quote} I think in this case, the client stateId will be smaller than that from server side, so observer will happily serve the requests. > [SBN Read] ObserverNameNode should throw StandbyException for requests not > from ObserverProxyProvider > ----------------------------------------------------------------------------------------------------- > > Key: HDFS-14660 > URL: https://issues.apache.org/jira/browse/HDFS-14660 > Project: Hadoop HDFS > Issue Type: Bug > Reporter: Chao Sun > Assignee: Chao Sun > Priority: Major > Attachments: HDFS-14660.000.patch, HDFS-14660.001.patch > > > In a HDFS HA cluster with consistent reads enabled (HDFS-12943), clients > could be using either {{ObserverReadProxyProvider}}, > {{ConfiguredProxyProvider}}, or something else. Since observer is just a > special type of SBN and we allow transitions between them, a client NOT using > {{ObserverReadProxyProvider}} will need to have > {{dfs.ha.namenodes.<nameservice>}} include all NameNodes in the cluster, and > therefore, it may send request to a observer node. > For this case, we should check whether the {{stateId}} in the incoming RPC > header is set or not, and throw an {{StandbyException}} when it is not. -- This message was sent by Atlassian JIRA (v7.6.14#76016) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org