CFT: fix OfflineIMAP lockup in single-threaded mode

Nicolas Sebrecht nicolas.s-dev at laposte.net
Sun Jan 27 12:09:22 UTC 2013


On Sun, Jan 27, 2013 at 01:08:12AM +0400, Eygene Ryabinkin wrote:
> G'day.
> 
> I was trying to integrate the fix for the issue #22,
>   https://github.com/OfflineIMAP/offlineimap/issues/22
> but came up with the updated patch,
>   http://codelabs.ru/patches/offlineimap/2012-preliminary-fix-deadlock-singlethreaded-IMAP-sync.diff

Very interesting work! Improving the threads system is something I've
tried to do in the past whithout beeing able to come with relevant
patches.

> In a nutshell, if you're syncing more than 100 (accounts + messages),
> you will experience a lockup if offlineimap is executed with flag
> "-1".

It is still not clear to me where this _100_ limit comes from. The
commit message looks good but I guess I'm too far away from the code
since too much time to get the point, I guess.

>        This patch tries to catch all such problems.  It is not yet in
> the 'next' branch, since I'll be polishing it a bit, but the wider
> testing for it is welcome, both in single-threaded (via "-1") and your
> regular mode of operations.  Comments and reviews are welcome too.

>From my very fast review I'd say the patch looks good enough to be
merged.

If you intend to get it tested, I would suggest you to merge it to the
next branch. It is the purpose of this branch: get things tested before
integration into master.

Also, the release cycle is still at release candidate v2 and with the
lack of activity these last months (from the repository POV), I think we
can consider this -rc2 to be a very early release candidate (so, open to
crazy/broken patches).

If it appears the patch is not correct, you could 'git revert' the
commit.

>From my experience, I suggest this approach because OfflineIMAP has a
small amount of active contributors. If you don't do the job for the
others, few will actually read the patch and fewer will apply it and
test it. Having it merged gives much more chances for the patch to be
tested.

> Thanks!

Thank to you. ,-)

-- 
Nicolas Sebrecht



More information about the OfflineIMAP-project mailing list