[
https://issues.apache.org/jira/browse/MESOS-8400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chun-Hung Hsiao reassigned MESOS-8400:
--------------------------------------
Assignee: (was: Chun-Hung Hsiao)
> Retry logic for CSI calls when plugin crashes
> ---------------------------------------------
>
> Key: MESOS-8400
> URL: https://issues.apache.org/jira/browse/MESOS-8400
> Project: Mesos
> Issue Type: Improvement
> Reporter: Chun-Hung Hsiao
> Priority: Critical
> Labels: mesosphere, storage
>
> When a CSI plugin crashes, the container daemon in SLRP will reset its
> corresponding {{csi::Client}} service future. However, if there is a racy CSI
> call, the call may be issued before the future is reset, resulting in a
> failure for that CSI call. This could be avoided by introducing a retry
> logic. The following lists two possibilities:
> 1. If a GRPC channel can continue to work after its underlying domain socket
> is unbinded, removed and binded with the same filename (but different fd)
> again, then we can consider implementing the retry logic in `csi::Client`.
> The downside is that the racy call would go to the old future and all
> succeeding calls would go to the new future set up by the container daemon.
> 2. If the GRPC channel is bound to the domain socket fd, then we need to
> implement the retry logic in SLRP.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)