[Gluster-users] Geo-Replication - Does not finish syncing - Codification Error
Senén Vidal Blanco
senenvidal at sgisoft.com
Fri Mar 20 09:39:07 UTC 2020
Hi,
I am having a problem syncing two volumes using Geo-Replication.
The entire certification and activation process works correctly. But when
synchronization starts it stays almost at the beginning of the first files and
never ends the job.
Checking the Glusterfs logs I find this error:
[2020-03-19 15:55:15.60848] E [syncdutils(worker /brickarchivos/archivos):
339:log_raise_exception] <top>: FAIL:
Traceback (most recent call last):
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/syncdutils.py",
line 369, in twrap tf(*aargs)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
1666, in Xsyncer self.Xcrawl()
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
1839, in Xcrawl self.Xcrawl(e, xtr_root)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
1839, in Xcrawl self.Xcrawl(e, xtr_root)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
1839, in Xcrawl self.Xcrawl(e, xtr_root)
[Previous line repeated 3 more times]
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
1801, in Xcrawl xte = self.xtime(e)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
403, in xtime return self.xtime_low(rsc, path, **opts)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
170, in xtime_low xt = rsc.server.xtime(path, self.uuid)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/resource.py",
line 104, in ff return f(*args)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/resource.py",
line 240, in xtime 8)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/libcxattr.py",
line 59, in lgetxattr return gr_query_xattr(cls, path, siz, 'lgetxattr', attr)
File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/py2py3.py", line
46, in gr_query_xattr return cls._query_xattr(path.encode(), size, syscall,
UnicodeEncodeError: 'utf-8' codec can't encode character '\udcba' in position
115: surrogates not allowed
Searching the internet a bit I have found that the error is due to a character
encoding problem. The typical diamond with the question mark.
I have had to perform a conversion of the files with this utility.
convmv -r -f cp1252 -t utf-8 /folder_of_share/ --notest
Now this is a temporary fix, since it does not guarantee that in the future
someone will copy another file or folder with a different format than utf-8 and
find that it stops synchronizing the rest of the contents to the slave.
Does anyone know how this problem can be corrected?
Thank you.
More information about the Gluster-users
mailing list