[SyncEvolution] Fixing the Maemo backend

Merlijn Wajer merlijn at wizzup.org
Sun Oct 4 10:41:26 UTC 2020


Hi,

I'm interested in getting the Maemo backend up and running again, to be
used in 'Maemo Leste' (Maemo 5, 100% open source, based on stable
Devuan/Debian).

The backend doesn't seem to be enabled by default in Debian, and it also
doesn't seem to build, when enabled explicitly. The dbus-1 cflags and
libs are missing (I added a call to pkg-config to work around this in
the maemo.am).

Then, I can see my calendar backends and invoke a sync, but it throws a
weird error when I try to sync like this:

> user at devuan:~$ syncevolution --sync refresh-from-client radicale calendar

This error shows up a lot (but maybe it is not harmful?):

> [ERROR] @default/radicalecal: basic_string::replace: __pos (which is 4294967295) > this->size() (which is 11)

Here's a slightly more verbose log, with most of my calendar events
removed, and two (first and last) left in place, but the description
modified.

> user at devuan:~$ syncevolution --sync refresh-from-client radicale radicalecal
> [WARNING] radicale: ignoring username , it is not needed
> [INFO] @default/addressbook: inactive
> [INFO] @default/calendar: inactive
> [INFO] @default/memo: inactive
> [INFO] @default/radicalejournal: inactive
> [INFO] @default/radicaletodo: inactive
> [INFO] @default/todo: inactive
> [WARNING] radicale: ignoring username , it is not needed
> [INFO @radicale] target side of local sync ready
> [INFO @radicale] @radicale/addressbook: inactive
> [INFO @radicale] @radicale/calendar: inactive
> [INFO @radicale] @radicale/memo: inactive
> [INFO @radicale] @radicale/radicalejournal: inactive
> [INFO @radicale] @radicale/radicaletodo: inactive
> [INFO @radicale] @radicale/todo: inactive
> [INFO @radicale] @radicale/radicalecal: using configured database=http://localhost:5223/merlijn/f5203b02-1985-a468-7a57-4c00a87f0850/
> [INFO @radicale] @radicale/radicalecal: starting first time sync from client (peer is server)
> [INFO @radicale] @radicale/radicalecal: sent 190/265
> [INFO] @default/radicalecal: starting first time sync from client (peer is client)
> [INFO] creating complete data backup of datastore radicalecal before sync (enabled with dumpData and needed for printChanges)
> @default data changes to be applied during synchronization:
> *** @default/radicalecal ***
> Comparison was impossible.
> 
> [INFO] @default/radicalecal: deleting 0
> [INFO] @default/radicalecal: started
> [INFO] @default/radicalecal: adding "specific text removed"
> [ERROR] @default/radicalecal: basic_string::replace: __pos (which is 4294967295) > this->size() (which is 11)
> [snip]
> [INFO] @default/radicalecal: adding "specific text 2 removed"
> [ERROR] @default/radicalecal: basic_string::replace: __pos (which is 4294967295) > this->size() (which is 11)
> [INFO] @default/radicalecal: received 189
> [INFO @radicale] @radicale/radicalecal: first time sync done unsuccessfully
> [ERROR @radicale] @radicale/radicalecal: fatal error (remote, status 500)
> 
> Synchronization failed, see /home/user/.cache/syncevolution/target_+config at radicale-2020-10-04-10-28-c/syncevolution-log.html for details.
> 
> Changes applied during synchronization (@radicale):
> +---------------|-----------------------|-----------------------|-CON-+
> |               |       @radicale       |       @default        | FLI |
> |        Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |   radicalecal |  0  |  0  |  0  |  0  |  0  |  0  |  0  |  0  |  0  |
> |   refresh-from-local, 0 KB sent by client, 0 KB received            |
> |   fatal error (remote, status 500)                                  |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |          start Sun Oct  4 10:28:56 2020, duration 0:04min           |
> |                  fatal error (remote, status 500)                   |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> First ERROR encountered: fatal error (remote, status 500)
> [ERROR] error code from SyncEvolution fatal error (remote, status 500): failure on target side @radicale of local sync
> [INFO] @default/radicalecal: first time sync done unsuccessfully
> [ERROR] @default/radicalecal: aborted on behalf of user (local, status 20017)
> [INFO] creating complete data backup after sync (enabled with dumpData and needed for printChanges)
> 
> Synchronization failed, see /home/user/.cache/syncevolution/radicale-2020-10-04-10-28-b/syncevolution-log.html for details.
> 
> Changes applied during synchronization:
> +---------------|-----------------------|-----------------------|-CON-+
> |               |       @default        |       @radicale       | FLI |
> |        Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |   radicalecal |  0  |  0  |  0  |  0  |  0  |  0  |  0  |  0  |  0  |
> |   refresh-from-remote, 0 KB sent by client, 0 KB received           |
> |   item(s) in database backup: 0 before sync, 0 after it             |
> |   fatal error (remote, status 500)                                  |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |          start Sun Oct  4 10:28:56 2020, duration 0:04min           |
> |                  fatal error (remote, status 500)                   |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> First ERROR encountered: basic_string::replace: __pos (which is 4294967295) > this->size() (which is 11)
> 
> Data modified @default during synchronization:
> *** @default/radicalecal ***
> no changes

The error is quite cryptic, and it's not clear to me what exactly is
throwing this error. Any help would be appreciated. I'd happy to help
fixing the problem.

Would it be helpful if I also included the html log file?

For the record, this is how I did the setup (this works on my Nokia N900
with the old Fremantle Maemo):

> user at devuan:~$ syncevolution --configure \
>>               --template webdav \
>>              username=merlijn \
>>              password=REMOVED \
>>              syncURL=http://localhost:5223/ \
>>              target-config at radicale
> [INFO] addressbook: configuring datastore with sync mode 'two-way'
> [INFO] calendar: configuring datastore with sync mode 'two-way'
> [INFO] memo: configuring datastore with sync mode 'two-way'
> [INFO] todo: configuring datastore with sync mode 'two-way'
> user at devuan:~$ syncevolution --configure \
>>              database=http://localhost:5223/merlijn/f5203b02-1985-a468-7a57-4c00a87f0850/ \
>>              backend=caldavtodo \
>>              target-config at radicale radicaletodo
> user at devuan:~$ syncevolution --configure \
>>              database=http://localhost:5223/merlijn/f5203b02-1985-a468-7a57-4c00a87f0850/ \
>>              backend=caldavjournal \
>>              target-config at radicale radicalejournal
> user at devuan:~$ syncevolution --configure \
>>              database=http://localhost:5223/merlijn/f5203b02-1985-a468-7a57-4c00a87f0850/ \
>>              backend=caldav \
>>              target-config at radicale radicalecal
> user at devuan:~$ syncevolution --configure \
>>              --template SyncEvolution_Client \
>>              sync=none \
>>              syncURL=local://@radicale \
>>              username= \
>>              password= \
>>              radicale
> [INFO] addressbook: inactive
> [INFO] calendar: inactive
> [INFO] memo: inactive
> [INFO] todo: inactive
> user at devuan:~$ syncevolution --configure \
>>              sync=two-way \
>>              backend=todo \
>>              database= \
>>              radicale radicaletodo
> user at devuan:~$ syncevolution --configure \
>>              sync=two-way \
>>              backend=memo \
>>              database= \
>>              radicale radicalejournal
> user at devuan:~$ syncevolution --configure \
>>              sync=two-way \
>>              backend=calendar \
>>              database= \
>>              radicale radicalecal
> user at devuan:~$ syncevolution --sync refresh-from-client radicale radicalecal

Any clues?

Cheers,
Merlijn
_______________________________________________
SyncEvolution mailing list -- syncevolution at syncevolution.org
To unsubscribe send an email to syncevolution-leave at syncevolution.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s



More information about the SyncEvolution mailing list