doveadm backup abort in imapc-client.c
Timo Sirainen
tss at iki.fi
Mon Oct 1 11:02:00 EEST 2018
> On 27 Sep 2018, at 21.52, Evan Klitzke <evan at eklitzke.org> wrote:
>
> I am using Dovecot 2.2.36 and I am trying to use doveadm backup to migrate email from Gmail to Dovecot. When I run doveadm backup, it goes for a while and then eventually hits an assertion error (I've tried this a few times now and it happens reliably).
>
> The assertion failure looks like this:
>
> dsync(evan at eklitzke.org): Panic: file imapc-client.c: line 179 (imapc_client_run_pre): assertion failed: (client->ioloop == NULL)
>
> The last few lines of log output before the crash look like this: https://gist.github.com/eklitzke/9a0dd77c44a6ee33e812f85d5773c24c
>
> The GDB backtrace when the program panics looks like this: https://gist.github.com/eklitzke/6b311474b08b546c462e0444c5cf479b
Looks like it crashes when:
- you have multiple folders
- dsync takes over 1 second between folders
- a new mail arrives during dsync
- you have imapc_features=gmail-migration
A simple workaround should be to comment out "list->refreshed_mailboxes_recently = FALSE" in imapc-sync.c. A better fix would probably be to remember an opened folder's mailbox_info_flags so it doesn't try to re-get them.
More information about the dovecot
mailing list