[ 
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.-

UPDATE: as it turned out, that was not correct -- 
{{MetaCacheServerPicker::MarkServerFailed()}} marks as failed only tablet 
replicas on the specified server, not the whole server.

  was: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.


> 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.-
> UPDATE: as it turned out, that was not correct -- 
> {{MetaCacheServerPicker::MarkServerFailed()}} marks as failed only tablet 
> replicas on the specified server, not the whole server.



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

Reply via email to