Details
-
Bug
-
Resolution: Fixed
-
Major
-
Lustre 2.8.0
-
None
-
3
-
9223372036854775807
Description
It appears that lustre_rsync does not sync files on MDT1(not MDT0).
Steps to reproduce are as follows:
1) setup changelog on MDT1
# lctl --device lustre-MDT0001 changelog_register
2) create a sub-directory on MDT1
# lfs mkdir -i 1 /lustre/mdt1_dir/
3) make the Lustre file system and the replica file system identical
# rsync -av /lustre/ /mnt/lustre-rsync/
4) create files on the sub-directory on MDT1
# echo aaa > /lustre/mdt1_dir/file
5) run lustre_rsync
# lustre_rsync --source=/lustre --target=/mnt/lustre-rsync --mdt=lustre-MDT0001 --user=cl1 --verbose
(/mnt/lustre-rsync/mdt1_dir/file is not created)
We think this is because the 3rd parameter of llapi_changelog_start() in lr_replicate() is source file system(status->ls_source_fs), not MDT device(status->ls_mdt_device).
So lustre_rsync refers a wrong changelog.
If we modify this parameter, lustre_rsync replicates correctly.