GNOME Bugzilla – Bug 583823
Could not sync files (folder to folder) with umlaute in it
Last modified: 2018-07-01 09:04:24 UTC
I am using the latest svn-version (Revision 1931) [datatypes.DataType ][DEBUG ] Getting Rid for file:///media/nas_data/save/Documents/dell/akku-problem/LED-Ladegerät.JPG (DataType.py:158) Exception in thread Thread-2: Traceback (most recent call last):
+ Trace 215692
self.run()
self.cur.execute(req, args)
[datatypes.DataType ][DEBUG ] Getting Rid for file:///media/nas_data/save/Documents/presentation/openstreetmap/ct-200809-Straßenmeister.pdf (DataType.py:158) Exception in thread Thread-2: Traceback (most recent call last):
I just saw this yesterday to. It seems python 2.6 handling of unicode has broken many things. *sigh*
This is a critical bug for me because I couldn't sync without a error. Is there a workaround or some plans for the bugfix?
Bug exist also for german "umlaute". Its in the trunk and the repo-version for ubuntu.
this is the same as bug #585227
*** Bug 585227 has been marked as a duplicate of this bug. ***
possible explanation and fix. between version 2.5 and 2.6 of python there were changes in str and unicode types to make way for python3. this somehow makes sqlite fussy about receiving strings with interesting characters. conduit is not the only project effected ( http://code.djangoproject.com/ticket/7921 ) a solution seems to be converting strings to unicode objects before passing to the database. to trigger the issue in conduit you just need to synk to folders where there is a file with an interesting character. mkdir 1 2 touch 1/foö after the file gets copied across in Synchonization.py:put_data(), the mapping gets updated #Update the mapping and save mapping.set_source_rid(sourceDataRid) mapping.set_sink_rid(sinkRid) conduit.GLOBALS.mappingDB.save_mapping(mapping) save_mapping() inserts a bunch of values that it gets from Mapping.values(). By forcing all those values from str to unicode the ProgrammingError is avoided.
Created attachment 140725 [details] [review] convert strings to unicode, to prevent exception on python 2.6
*** Bug 584254 has been marked as a duplicate of this bug. ***
I tried the latest SVN with Sams patch and it fixed the "You must not use 8-bit bytestrings" for me. "Umlaute" like ä,ü,ö work without a problem, but still some chars don't, e.g.: DEBUG:datatypes.DataType:Getting Rid for file:///home/matt/Dokumente/WU/FIWI PS/praesi/Pr%C3%A4sentation%20Chris%20FIWI.ppt [Syncronization ][CRITICAL] UNKNOWN SYNCHRONIZATION ERROR Traceback (most recent call last):
+ Trace 216921
self.one_way_sync(self.source, sink)
dataRid = data.get_rid()
mtime=self.get_mtime(),
ts = self._file.get_mtime()
mtime = self.fileInfo.get_attribute_uint64('time::modified')
(Synchronization.py:751) CRITICAL:Syncronization:UNKNOWN SYNCHRONIZATION ERROR Traceback (most recent call last):
The files name actually is "Pr%C3%A4sentation%20Chris%20FIWI.ppt", same with a file named Zwischenpr�ntation.zip (which actually is a corrupted cp1252/utf-8 filename from a windows machine) This is just a handful of files which I can rename by now, but conduit still should now how to handle them. Anyway thanks for the patch!
Conduit is not under active development anymore, has not seen code changes for eight years, and saw its last tarball release in 2010. Its codebase has been archived: https://gitlab.gnome.org/Archive/conduit/commits/master Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect reality. Please feel free to reopen this ticket (or rather transfer the project to GNOME Gitlab, as GNOME Bugzilla is deprecated) if anyone takes the responsibility for active development again.