Ticket #308 (reopened defect)

Opened 2 years ago

Last modified 2 months ago

msynctool stalls on syncing

Reported by: Corneliussen@gmail.com Assigned to: abauer
Priority: high Milestone:
Component: Plugin: google-calendar Version: 0.22
Severity: normal Keywords:
Cc: benjamin.reveille@gmail.com, andrew.conkling@gmail.com, pferschmann@softeu.com, peterix@gmail.com

Description

When I try to sync my nokia 6230i with google calendar using msynctool and the plugins gnokii-sync and google-calendar-sync the sync happens ok, but when all the syncing is done msynctool stalles and has to be closed by a ctrl+c. This would not have been that big a problem if it weren't because of that msynctool starts the next sync by saying

The previous synchronization was unclean. Slow-syncing

Because of this I always get a lot of conflicts because all calendar entries is on both sides.

Attachments

osync-hang.tar.bz2 (7.5 MB) - added by forsberg on 09/10/06 21:31:38.
trace files from hung opensync
opensync.tbz2 (0.9 MB) - added by ser on 02/05/08 16:22:41.
Debug logs for ser's addition.
syncl (63.8 kB) - added by Peterix on 04/10/08 01:53:44.
Output from multisync-gui

Change History

08/23/06 15:29:26 changed by Andcor

By the way, when I sync the phone with any other plugin, it is all ok, the problem is, as far as I know, only in the google-calendar plugin

09/01/06 13:51:10 changed by twogood

I have seen this behaviour as well (but with other plugins). I haven't investigated it througly yet but I suspect that in my case it happens when the format conversion fails for one or more objects. Could you attach traces colleced as described on http://www.opensync.org/wiki/tracing ?

09/01/06 16:46:36 changed by twogood

Please try this patch and get back with the result. It is very likely not the correct solution, but it made the symptoms go away for me:

Index: osengine/osengine_client.c
===================================================================
--- osengine/osengine_client.c  (revision 1243)
+++ osengine/osengine_client.c  (working copy)
@@ -537,6 +537,9 @@
 error_free_message:
        osync_message_unref(message);
 error:
+       //osync_flag_unset(entry->fl_dirty);
+       osync_flag_set(entry->fl_synced);
+       osync_flag_detach(entry->fl_committed);
        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error));
        return FALSE;
 }

Maybe a new "fl_error" flag is needed to solve this properly...?

09/07/06 18:39:19 changed by abauer

  • owner changed from ehabkost to abauer.
  • status changed from new to assigned.
  • version changed from 0.X to 0.19.

09/10/06 21:22:13 changed by forsberg

I have a similar problem, trying to synchronize between evo2 and kdepim. There's quite a bunch of data in my evo, and a lot of it is with non-ascii characters. Don't know if that matters.

The synchronization seems to go well - a lot of data is transferred, but the msynctool never exits. Strace:ing the osplugin processes, they both continuously do:

poll([{fd=13, events=POLLIN}], 1, 1)    = 0

Checking out what fd 13 is, it turns out it's a pipe. For the evo plugin, it's connected to nothing:

forsberg 18473 18471  0 21:07 pts/4    00:00:00 /opt/opensync/libexec/osplugin /home/forsberg/.opensync/group1 1
lr-x------ 1 forsberg forsberg 64 2006-09-10 21:10 /proc/18473/fd/13 -> pipe:[272418]
uterus:root ~ # lsof|grep 272418
osplugin  18473   forsberg   13r     FIFO        0,5              272418 pipe
osplugin  18473   forsberg   14w     FIFO        0,5              272418 pipe

For the kdepim plugin, it's connected to knotes:

forsberg 18478 18471  3 21:07 pts/4    00:00:04
/opt/opensync/libexec/osplugin /home/forsberg/.opensync/group1 2

uterus:root ~ # ls -l /proc/18478/fd/13 
lr-x------ 1 forsberg forsberg 64 2006-09-10 21:10 /proc/18478/fd/13 -> pipe:[272422]
uterus:root ~ # lsof|grep 272422
osplugin  18478   forsberg   13r     FIFO        0,5              272422 pipe
osplugin  18478   forsberg   14w     FIFO        0,5              272422 pipe
knotes    18500   forsberg   13r     FIFO        0,5              272422 pipe
knotes    18500   forsberg   14w     FIFO        0,5
272422 pipe

09/10/06 21:31:38 changed by forsberg

  • attachment osync-hang.tar.bz2 added.

trace files from hung opensync

09/10/06 21:36:15 changed by forsberg

I tried the patch by twogood. Didn't work for me.

11/08/06 00:42:52 changed by cstender

  • milestone set to 0.21.

02/07/07 14:10:03 changed by pmarat

  • status changed from assigned to closed.
  • resolution set to fixed.

could you retry with current svn and upcoming 0.21 If you still ctrl+c you could also delete the lock file this way no slow sync will be used next time.

feel free to reopen this bug

02/15/07 23:23:51 changed by dwardo

  • cc set to benjamin.reveille@gmail.com.
  • status changed from closed to reopened.
  • resolution deleted.

Hello, I'm synching kde-pim with google-calendar using:

eix msynctool

[I] app-pda/msynctool

Available versions: (~)0.20 (~)0.21

Installed versions: 0.21(16:12:51 15.02.2007)

Homepage: http://www.opensync.org/

Description: OpenSync? msync tool

and it also stalls for me. Only Ctrl-c can stop it. i.e. Same symptoms. Removing the lock file does not prevent 'slow synching' on the next run.

02/20/07 13:49:04 changed by cstender

  • milestone deleted.

05/03/07 03:10:30 changed by andrewski

  • cc changed from benjamin.reveille@gmail.com to benjamin.reveille@gmail.com, andrew.conkling@gmail.com.
  • version changed from 0.19 to 0.21.

05/11/07 16:17:12 changed by fers

  • cc changed from benjamin.reveille@gmail.com, andrew.conkling@gmail.com to benjamin.reveille@gmail.com, andrew.conkling@gmail.com, pferschmann@softeu.com.

The same thing happens to me with 0.22 :-(

05/11/07 16:24:37 changed by andrewski

  • version changed from 0.21 to 0.22.

(follow-up: ↓ 15 ) 02/05/08 16:21:08 changed by ser

  • type changed from defect to task.

I'm seeing the same issue with version 0.22. The trace log is attached.

When it hung (on the console, and the time stamp of the log wasn't changing), I waited two minutes and suspended the application (CTRL-Z). I waited 20 seconds, and then resumed it -- this was because of something I had read through a search for this issue on Google. After two more minutes, it still hadn't changed, so I interrupted it.

The first sync resulted in a 45MB log file (4MB compressed), which I'm not attaching. The subsequent sync was a more modest 12MB log file (1MB compressed).

This is with the following group:

1085 % msynctool --showgroup Computers
Groupname: Computers
Member 1: google-calendar
        Configuration : <config>
        <url>http://www.google.com/calendar/feeds/sea...@gmail.com/private/full</url>
        <username>sea...@gmail.com</username>
        <password>............</password>
</config>

Member 2: file-sync
        Configuration : <?xml version="1.0"?>
<config>
  <!-- directory path for file-sync -->
  <path>/home/ser/.shared_test/</path>

  <!-- should care of subdirectories (TRUE or FALSE) -->
  <recursive>TRUE</recursive>
</config>

02/05/08 16:22:41 changed by ser

  • attachment opensync.tbz2 added.

Debug logs for ser's addition.

(in reply to: ↑ 14 ) 02/05/08 16:32:34 changed by ser

Replying to ser:

Incidentally, I have the following processes when this happens:

ser      22031 10.1  2.0 139544 43036 pts/4    Sl+  10:27   0:08 msynctool --sync Computers --conflict n
ser      22032  0.2  0.5  46676 11032 pts/4    Sl+  10:27   0:00 /usr/lib/opensync/osplugin /home/ser/.opensync/group1 1
ser      22037  0.0  0.2  42660  5596 pts/4    Sl+  10:27   0:00 /usr/lib/opensync/osplugin /home/ser/.opensync/group1 2

strace reports that the latter two are busy polling, while the msynctool process is hung on a futex:

1232 % strace -p 22031
Process 22031 attached - interrupt to quit
futex(0x80742bc, FUTEX_WAIT, 1, NULL <unfinished ...>

Don't know if that helps any.

04/10/08 01:51:46 changed by Peterix

  • cc changed from benjamin.reveille@gmail.com, andrew.conkling@gmail.com, pferschmann@softeu.com to benjamin.reveille@gmail.com, andrew.conkling@gmail.com, pferschmann@softeu.com, peterix@gmail.com.

Ok, same thing (or similar) here. I'm trying to sync my pocket pc pda with sunbird using multisync-gui and version 0.22 of opensync. It appears to do something, but there's no change both in sunbird and on the pda. The sync tool just hangs after syncing 239 'things'.

As I've seen some similar report here, I did the same thing. Strace for both plugins gives me lots of this:

poll([{fd=3, events=POLLIN}], 1, 1)     = 0

Processes from `ps -aux'

peterix  16799  0.8  0.2  25164  2812 pts/0    Sl+  01:29   0:00 /usr/lib/opensync/osplugin /home/peterix/.opensy
peterix  16804  1.0  0.4  41860  4792 pts/0    Sl+  01:29   0:00 /usr/lib/opensync/osplugin /home/peterix/.opensy

And some pipes ...

[peterix@peterix ~]$ ls -l /proc/16799/fd/3
lr-x------ 1 peterix users 64 2008-04-10 01:33 /proc/16799/fd/3 -> pipe:[47496]
[peterix@peterix ~]$ lsof|grep 47496
osplugin  16799 peterix    3r     FIFO        0,5            47496 pipe
osplugin  16799 peterix   16w     FIFO        0,5            47496 pipe
[peterix@peterix ~]$ ls -l /proc/16804/fd/3
lr-x------ 1 peterix users 64 2008-04-10 01:34 /proc/16804/fd/3 -> pipe:[47500]
[peterix@peterix ~]$ lsof|grep 47500
osplugin  16804 peterix    3r     FIFO        0,5            47500 pipe
osplugin  16804 peterix   16w     FIFO        0,5            47500 pipe

Sunbird config:

<config>
	<file path="/home/peterix/Org/cal.ics" />
</config>

Synce config:

<config>
	<contact></contact>
	<todos></todos>
	<calendar></calendar>
	<file>/My Documents/</file>
</config>

04/10/08 01:53:44 changed by Peterix

  • attachment syncl added.

Output from multisync-gui

08/09/08 22:44:40 changed by felixmoeller

  • type changed from task to defect.

this is a defect for me...