qa/cephfs: add test_session_evict_non_blocklisted test case#57458
qa/cephfs: add test_session_evict_non_blocklisted test case#57458
Conversation
baac7f4 to
fb3885f
Compare
|
The new qa runs, which are all successful. |
| self.fs.set_max_mds(2) | ||
| status = self.fs.wait_for_daemons() | ||
|
|
||
| self.fs.set_ceph_conf('client', 'client reconnect stale', True) |
There was a problem hiding this comment.
mds_defer_session_stale defaults to true, i hope this doesn't hamper the test case
There was a problem hiding this comment.
No, the default should be false:
88 - name: client_reconnect_stale
89 type: bool
90 level: advanced
91 desc: reconnect when the session becomes stale
92 default: false
93 services:
94 - mds_client
Isn't it ?
There was a problem hiding this comment.
you referred to client_reconnect_stale, i was pointing to mds_defer_session_stale, both are a bit different
There was a problem hiding this comment.
Okay, my mistake. No I won't.
qa/tasks/cephfs/test_sessionmap.py
Outdated
| Check that mds evicts without blocklisting client | ||
| """ | ||
|
|
||
| self.fs.set_ceph_conf('mds', 'mds session blocklist on evict', False) |
There was a problem hiding this comment.
If you use self.config_set(...), the MDS restart done below isn't required.
There was a problem hiding this comment.
Yeah, this will be better. I will switch to it.
|
|
||
| mount_a_client_id = self.mount_a.get_global_id() | ||
| self.fs.mds_asok(['session', 'evict', "%s" % mount_a_client_id], | ||
| mds_id=self.fs.get_rank(rank=0, status=status)['name']) |
There was a problem hiding this comment.
Why fetch mds_id for rank0 again?
There was a problem hiding this comment.
@vshankar Do you mean reusing the mds_id from previous one ?
URL: https://tracker.ceph.com/issues/65647 Signed-off-by: Xiubo Li <xiubli@redhat.com>
When evicting the clients or sessions during the mds_session_blocklist_on_evict option is disabled the clients should reconnect to MDS successfully later after new IOs being sent. URL: https://tracker.ceph.com/issues/65647 Signed-off-by: Xiubo Li <xiubli@redhat.com>
|
@lxbsz Note that this changes needs to be tested with the respective kernel driver changes. I'll be doing that. |
Get it. thanks! |
|
jenkins test api |
|
@lxbsz dropping this from the test branch since the kclient fix isn't ready yet. |
|
Please tag me when its ready. |
@lxbsz My understanding was this change tests a fix in the kclient and the kclient change isn't fully ready yet. Is that not the case? |
No. This is just a test missed to test this issue. |
|
This PR is under test in https://tracker.ceph.com/issues/67252. |
* refs/pull/57458/head: qa/cephfs: add test_session_evict_non_blocklisted test case mds: cleanup the debug logs to make it to be more readable
* refs/pull/57458/head: qa/cephfs: add test_session_evict_non_blocklisted test case mds: cleanup the debug logs to make it to be more readable
When evicting the clients or sessions during the
mds_session_blocklist_on_evict option is disabled the clients should reconnect to MDS successfully later after new IOs being sent.
URL: https://tracker.ceph.com/issues/65647
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
xbetween the brackets:[x]. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windowsjenkins test rook e2e