This one time, at band camp, Stephen Gran said: > I have so far been unable to reproduce this when running offlineimap > under strace, which suggests a timing dependant bug (kind of as > suspected, but still not all that helpful, I realize). The earlier > strace (and the strace I see when attaching after it hangs) does suggest > that a lock is not being releaesed somewhere, but I can't immediately > see anything obviously wrong with the logic in the code.
Trying to run with -d thread under python2.6 gets me a recursion exceeded exception, but I did manage to capture a lockup under 2.5: Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c925d3210>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <InstanceLimitedThread(Copy message 2200 from packaging.clamav, initial daemon)>.start(): starting thread Copy message 2200 from packaging.clamav: <InstanceLimitedThread(Copy message 2200 from packaging.clamav, started daemon)>.__bootstrap(): thread started Copy message 2200 from packaging.clamav: Copy message 2200 IMAP[packaging.clamav] -> Maildir[packaging.clamav], LocalStatus[packaging.clamav] Copy message 2200 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire(1): blocked waiting, value=0 Copy message 2200 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c91080e10>.release: success, value=1 Copy message 2200 from packaging.clamav: <Condition(<thread.lock object at 0x7f0c9d86f288>, 1)>.notify(): notifying 1 waiter Folder sync Lobefin[packaging.clamav]: <Condition(<thread.lock object at 0x7f0c9d86f288>, 0)>.wait(): got it Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.release: success, value=1 Folder sync Lobefin[packaging.clamav]: <Condition(<thread.lock object at 0x7f0c9d86f288>, 0)>.notify(): no waiters Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c925d3210>.acquire(1): blocked waiting, value=0 Copy message 2200 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c925d3210>.release: success, value=1 Copy message 2200 from packaging.clamav: <Condition(<thread.lock object at 0x7f0c9d86f1e0>, 1)>.notify(): notifying 1 waiter Copy message 2200 from packaging.clamav: <InstanceLimitedThread(Copy message 2200 from packaging.clamav, started daemon)>.__bootstrap(): normal return Folder sync Lobefin[packaging.clamav]: <Condition(<thread.lock object at 0x7f0c9d86f1e0>, 0)>.wait(): got it Copy message 2200 from packaging.clamav: <Condition(<thread.lock object at 0x7a81b40>, 0)>.notify(): no waiters Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c925d3210>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <InstanceLimitedThread(Copy message 2201 from packaging.clamav, initial daemon)>.start(): starting thread Copy message 2201 from packaging.clamav: <InstanceLimitedThread(Copy message 2201 from packaging.clamav, started daemon)>.__bootstrap(): thread started Copy message 2201 from packaging.clamav: Copy message 2201 IMAP[packaging.clamav] -> Maildir[packaging.clamav], LocalStatus[packaging.clamav] Copy message 2201 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire(1): blocked waiting, value=0 Copy message 2201 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c91080e10>.release: success, value=1 Copy message 2201 from packaging.clamav: <Condition(<thread.lock object at 0x7f0c9d86f288>, 1)>.notify(): notifying 1 waiter Folder sync Lobefin[packaging.clamav]: <Condition(<thread.lock object at 0x7f0c9d86f288>, 0)>.wait(): got it Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.release: success, value=1 Folder sync Lobefin[packaging.clamav]: <Condition(<thread.lock object at 0x7f0c9d86f288>, 0)>.notify(): no waiters Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c925d3210>.acquire(1): blocked waiting, value=0 Copy message 2201 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c925d3210>.release: success, value=1 Copy message 2201 from packaging.clamav: <Condition(<thread.lock object at 0x7f0c9d86f1e0>, 1)>.notify(): notifying 1 waiter Copy message 2201 from packaging.clamav: <InstanceLimitedThread(Copy message 2201 from packaging.clamav, started daemon)>.__bootstrap(): normal return Folder sync Lobefin[packaging.clamav]: <Condition(<thread.lock object at 0x7f0c9d86f1e0>, 0)>.wait(): got it Copy message 2201 from packaging.clamav: <Condition(<thread.lock object at 0x7a81b58>, 0)>.notify(): no waiters Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c925d3210>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <InstanceLimitedThread(Copy message 2202 from packaging.clamav, initial daemon)>.start(): starting thread Copy message 2202 from packaging.clamav: <InstanceLimitedThread(Copy message 2202 from packaging.clamav, started daemon)>.__bootstrap(): thread started Copy message 2202 from packaging.clamav: Copy message 2202 IMAP[packaging.clamav] -> Maildir[packaging.clamav], LocalStatus[packaging.clamav] Copy message 2202 from packaging.clamav: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire: success, value=0 Folder sync Lobefin[packaging.clamav]: <threading._BoundedSemaphore object at 0x7f0c91080e10>.acquire(1): blocked waiting, value=0 And there it hangs. -- ----------------------------------------------------------------- | ,''`. Stephen Gran | | : :' : sg...@debian.org | | `. `' Debian user, admin, and developer | | `- http://www.debian.org | ----------------------------------------------------------------- -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org