On 21 April 2018 at 05:26, 陶冬冬 <tdd21151186@xxxxxxxxx> wrote: > >> 在 2018年4月21日,上午1:54,Patrick Donnelly <pdonnell@xxxxxxxxxx> 写道: >> >> On Fri, Apr 20, 2018 at 7:03 AM, 陶冬冬 <tdd21151186@xxxxxxxxx> wrote: >>> I know this can fix the hang issue, but this solution seems workaround to me, because unmount will still have to wait for 120s, i don’t think it’s user friendly >>> I would like to propose another solution here - we request the latest osdmap in client's ms_handle_remote_reset >>> here is the eviction flow >>> [1] mds send evict command to monitor >>> [2] mds then wait for the latest osdmap >>> [3] mds get the latest osdmap and then kill the session from the evicted client which is on the blacklist now >>> [4] when the evicted client try to communicate with the mds, this client will certainly get a RESET SESSION reply >> >> What you've described makes sense to me Dongdong. Rishabh, can you try >> testing a solution that gets the latest osdmap in >> ::ms_handle_remote_reset for case: MetaSession::STATE_OPENING. I don't see client in `MetaSession::STATE_OPENING` at any point -- from mounting to eviction. I added debug-code to all cases [2] in ` Client::ms_handle_remote_reset` to log when client enters any of these states to check. It only enters `MetaSession::STATE_OPEN` when it is evicted. Adding `objecter->maybe_request_map()` here [3] fixes the issue. >> (Rishabh, we can drop [1] if this works as expected.) I think not only [1] but also [4]. That part of the code would never be used (at least in case of eviction). It will be one-liner patch, if this solution happens to be correct/appropriate. [1] https://github.com/ceph/ceph/pull/21065/commits/d3fb8c24c7df4fa7443bce71c1adf8cf84c6361e [2] https://github.com/ceph/ceph/blob/master/src/client/Client.cc#L13496 [3] https://github.com/ceph/ceph/blob/master/src/client/Client.cc#L13514 [4] https://github.com/ceph/ceph/pull/21065/commits/cb996c2bef7b9dacdeec6c17d83a473b26db0e92 -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html