Skip to content

Commit 379637e

Browse files
committed
Merge PR ceph#62872 into main
* refs/pull/62872/head: qa: add test for cloning with charmap pybind/mgr/volumes: fix typo in casesensitive vxattr Reviewed-by: Anoop C S <[email protected]> Reviewed-by: Xavi Hernandez <[email protected]> Reviewed-by: Greg Farnum <[email protected]>
2 parents 4233d9b + 358e6e8 commit 379637e

File tree

2 files changed

+25
-2
lines changed

2 files changed

+25
-2
lines changed

qa/tasks/cephfs/test_volumes.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2233,6 +2233,29 @@ def test_subvolume_charmap(self):
22332233
v = json.loads(v)
22342234
self.assertEqual(v, attrs)
22352235

2236+
def test_subvolume_clone_charmap(self):
2237+
subvolume = self._gen_subvol_name()
2238+
attrs = {
2239+
"normalization": "nfkd",
2240+
"encoding": "utf8",
2241+
"casesensitive": False,
2242+
}
2243+
self._fs_cmd("subvolume", "create", self.volname, subvolume)
2244+
for setting, value in attrs.items():
2245+
self._fs_cmd("subvolume", "charmap", "set", self.volname, subvolume, setting, str(value))
2246+
2247+
snapshot = "snap1"
2248+
self._fs_cmd("subvolume", "snapshot", "create", self.volname, subvolume, snapshot)
2249+
clone = "clone"
2250+
self._fs_cmd("subvolume", "snapshot", "clone", self.volname, subvolume, snapshot, clone)
2251+
2252+
# wait for clone to complete
2253+
self._wait_for_clone_to_complete(clone)
2254+
2255+
v = self._fs_cmd("subvolume", "charmap", "get", self.volname, clone)
2256+
v = json.loads(v)
2257+
self.assertEqual(v, attrs)
2258+
22362259
def test_subvolume_charmap_rm(self):
22372260
subvolume = self._gen_subvol_name()
22382261
self._fs_cmd("subvolume", "create", self.volname, subvolume)

src/pybind/mgr/volumes/fs/operations/versions/subvolume_base.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,8 @@ def get_attrs(self, pathname):
211211
attrs["normalization"] = None
212212

213213
try:
214-
case_insensitive = self.fs.getxattr(pathname, 'ceph.dir.caseinsensitive').decode('utf-8')
215-
attrs["case_insensitive"] = case_insensitive == "0"
214+
casesensitive = self.fs.getxattr(pathname, 'ceph.dir.casesensitive').decode('utf-8')
215+
attrs["case_insensitive"] = casesensitive == "0"
216216
except cephfs.NoData:
217217
attrs["case_insensitive"] = False
218218

0 commit comments

Comments
 (0)