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

Chao Sun commented on HDFS-13923:
---------------------------------

bq. Here you are talking, I believe, about a way of telling the client 
dynamically not to use ObserverNode. Do you?

Yes that's right.

bq. I don't see how configuration parameter can help with that. If the client 
is cached, then whatever value of a config variable stored in it during the 
initial instantiation will still be there, even if you updated the config file.

If using the default {{FileSystem}} cache key, then yes, the same cached client 
will be used. But if we also change the cache key class in {{FileSystem}} and 
make it consider this configuration flag, then a different {{FileSystem}} 
instance will be used when the configuration flag changes, and so a different 
client with different behavior will be used.

> Add a configuration to turn on/off observer reads
> -------------------------------------------------
>
>                 Key: HDFS-13923
>                 URL: https://issues.apache.org/jira/browse/HDFS-13923
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Chao Sun
>            Priority: Major
>
> In some situations having a config to turn on/off observer reads dynamically 
> may be useful. For instance, some applications may be sensitive for data 
> freshness and want to always reach directly to active NN. In a more complex 
> scenario, services such as Presto may want to apply observer reads for 
> different types of queries. In this case, simply change 
> {{dfs.client.failover.proxy.provider.<nameservice>}} may not be enough, since 
> with FileSystem cache (which is usually turned on) will ignore the change and 
> still use the same FileSystem object.
> Here I'm proposing to add a flag in {{HdfsClientConfigKeys}}, such as 
> {{dfs.client.observer.reads.enabled}}, that can be used to dynamically turn 
> on/off observer reads. The FileSystem cache key should also take account of 
> this flag in its {{hashCode}} and {{equals}} impl, so that different 
> FileSystem objects will be used depending on the flag.
>  
> cc [~shv], [~xkrogen], [~vagarychen], [~zero45] for discussion.



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

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

Reply via email to