[ 
https://issues.apache.org/jira/browse/HDFS-13873?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717580#comment-16717580
 ] 

Erik Krogen commented on HDFS-13873:
------------------------------------

I like your logic, [~shv], but I think it could still result in the live-lock 
issue [~daryn] was originally concerned with if you have a very read-heavy 
cluster with very few writes, if you have either a malicious client or a lag in 
edit log tailing. Let's assume there is only 100 write/s and 
{{client.LastSeenId - observer.LastWrittenId == 10000}} (because the client is 
malicious or because the observer fell far behind), the server will not reject 
the request, but the observer will take a long time before it serves the 
request, and if there are multiple such request it could fill all of the 
handlers. I think ideally we also need to add some sort of threshold based on 
time the request has waited or number of times the request has been pushed back 
into the queue.

> ObserverNode should reject read requests when it is too far behind.
> -------------------------------------------------------------------
>
>                 Key: HDFS-13873
>                 URL: https://issues.apache.org/jira/browse/HDFS-13873
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs-client, namenode
>    Affects Versions: HDFS-12943
>            Reporter: Konstantin Shvachko
>            Assignee: Chao Sun
>            Priority: Major
>
> Add a server-side threshold for ObserverNode to reject read requests when it 
> is too far behind.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to