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

Alexey Serbin updated KUDU-2023:
--------------------------------
    Description: Current implementation of 
{{MetaCacheServerPicker::MarkServerFailed()}} marks the whole tablet server 
with multiple tablets as failed in the metadata cache, so future requests to 
any tablets hosted by the server would be directed to replicas hosted by other 
tablet servers.  There are particular use-cases where having tablet-grained 
version of the {{MetaCacheServerPicker::MarkServerFailed()}} method would be 
beneficial.  For example, marking only particular tablet failed on a tablet 
server because of an error during {{KuduSession::Flush()}} could avoid 
thrashing  the whole metadata cache for the rest of tablets on the same server 
if the server is overall healthy and robust.  (was: Current implementation of 
{{MetaCacheServerPicker::MarkServerFailed()}} makes the whole tablet server 
with multiple tablets as failed in the metadata cache, so future requests to 
any tablets hosted by the server would be directed to some other tablet 
servers.  There are some use-cases where having tablet-grained version of the 
{{MetaCacheServerPicker::MarkServerFailed()}} method would be beneficial.  For 
example, marking only particular tablet failed on a tablet server because of an 
error during {{KuduSession::Flush()}} could avoid thrashing  the whole metadata 
cache for the rest of tablets on the same server if the server is overall 
healthy and robust.)

> Add tablet-specific version of MetaCacheServerPicker::MarkServerFailed()
> ------------------------------------------------------------------------
>
>                 Key: KUDU-2023
>                 URL: https://issues.apache.org/jira/browse/KUDU-2023
>             Project: Kudu
>          Issue Type: Improvement
>          Components: client
>    Affects Versions: 1.4.0
>            Reporter: Alexey Serbin
>            Assignee: Alexey Serbin
>
> Current implementation of {{MetaCacheServerPicker::MarkServerFailed()}} marks 
> the whole tablet server with multiple tablets as failed in the metadata 
> cache, so future requests to any tablets hosted by the server would be 
> directed to replicas hosted by other tablet servers.  There are particular 
> use-cases where having tablet-grained version of the 
> {{MetaCacheServerPicker::MarkServerFailed()}} method would be beneficial.  
> For example, marking only particular tablet failed on a tablet server because 
> of an error during {{KuduSession::Flush()}} could avoid thrashing  the whole 
> metadata cache for the rest of tablets on the same server if the server is 
> overall healthy and robust.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to