info = self.fs.mds_asok(['dump', 'inode', hex(ino)])
assert info['path'] == "/foo"
- def _run_drop_cache_cmd(self, timeout, use_tell):
+ def _run_drop_cache_cmd(self, timeout):
drop_res = None
- if use_tell:
- mds_id = self.fs.get_lone_mds_id()
- drop_res = json.loads(
- self.fs.mon_manager.raw_cluster_cmd("tell", "mds.{0}".format(mds_id),
- "cache", "drop", str(timeout)))
- else:
- drop_res = self.fs.mds_asok(["cache", "drop", str(timeout)])
+ mds_id = self.fs.get_lone_mds_id()
+ drop_res = json.loads(
+ self.fs.mon_manager.raw_cluster_cmd("tell", "mds.{0}".format(mds_id),
+ "cache", "drop", str(timeout)))
return drop_res
- def _drop_cache_command(self, timeout, use_tell=True):
+ def _drop_cache_command(self, timeout):
self.mount_b.umount_wait()
ls_data = self.fs.mds_asok(['session', 'ls'])
self.assert_session_count(1, ls_data)
# create some files
self.mount_a.create_n_files("dc-dir/dc-file", 1000)
# drop cache
- drop_res = self._run_drop_cache_cmd(timeout, use_tell)
+ drop_res = self._run_drop_cache_cmd(timeout)
self.assertTrue(drop_res['client_recall']['return_code'] == 0)
self.assertTrue(drop_res['flush_journal']['return_code'] == 0)
- def _drop_cache_command_timeout(self, timeout, use_tell=True):
+ def _drop_cache_command_timeout(self, timeout):
self.mount_b.umount_wait()
ls_data = self.fs.mds_asok(['session', 'ls'])
self.assert_session_count(1, ls_data)
# simulate client death and try drop cache
self.mount_a.kill()
- drop_res = self._run_drop_cache_cmd(timeout, use_tell)
+ drop_res = self._run_drop_cache_cmd(timeout)
self.assertTrue(drop_res['client_recall']['return_code'] == -errno.ETIMEDOUT)
self.assertTrue(drop_res['flush_journal']['return_code'] == 0)
self.mount_a.mount()
self.mount_a.wait_until_mounted()
- def test_drop_cache_command_asok(self):
- """
- Basic test for checking drop cache command using admin socket.
- Note that the cache size post trimming is not checked here.
- """
- self._drop_cache_command(10, use_tell=False)
-
- def test_drop_cache_command_tell(self):
+ def test_drop_cache_command(self):
"""
Basic test for checking drop cache command using tell interface.
Note that the cache size post trimming is not checked here.
"""
self._drop_cache_command(10)
- def test_drop_cache_command_timeout_asok(self):
- """
- Check drop cache command with non-responding client using admin
- socket. Note that the cache size post trimming is not checked here.
- """
- self._drop_cache_command_timeout(5, use_tell=False)
-
- def test_drop_cache_command_timeout_tell(self):
+ def test_drop_cache_command_timeout(self):
"""
Check drop cache command with non-responding client using tell
interface. Note that the cache size post trimming is not checked
} else if (command == "cache status") {
std::lock_guard l(mds_lock);
mdcache->cache_status(f);
- } else if (command == "cache drop") {
- int64_t timeout;
- if (!cmd_getval(g_ceph_context, cmdmap, "timeout", timeout)) {
- timeout = 0;
- }
-
- C_SaferCond cond;
- command_cache_drop((uint64_t)timeout, f, &cond);
- int r = cond.wait();
- if (r != 0) {
- f->flush(ss);
- }
} else if (command == "dump tree") {
command_dump_tree(cmdmap, ss, f);
} else if (command == "dump loads") {