docker-offlineimap/offlineimap
Sebastian Spaeth 0af9ef70a7 Factor out SQL retries
Test if sqlite is multithreading-safe and bail out if not. sqlite
versions since at least 2008 are.
But, as it still causes errors when 2
threads try to write to the same connection simultanously (We get a
"cannot start transaction within a transaction" error), we protect
writes with a per class, ie per-connection lock. Factor out the retrying
to write when the database is locked.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2011-05-07 13:29:11 +02:00
..
folder Factor out SQL retries 2011-05-07 13:29:11 +02:00
repository repository.LocalStatus: Remove code duplication 2011-05-07 13:29:11 +02:00
ui Make getnicename work again for classes that derive from object() 2011-05-07 13:29:11 +02:00
__init__.py Add OfflineImapError class 2011-05-05 20:00:07 +02:00
accounts.py If we loop, exit the account synchronization after 3 failed attempts 2011-05-05 20:00:07 +02:00
CustomConfig.py Improve CustomConfig documentation 2011-01-20 19:46:01 +01:00
error.py Add OfflineImapError class 2011-05-05 20:00:07 +02:00
imaplib2.py imaplib2: Bump from 2.20 to 2.22 2011-04-11 19:10:45 +02:00
imaplibutil.py Fix IMAP4_Tunnel to work with imaplib2 2011-04-13 18:41:53 +02:00
imapserver.py Throw OfflineImapError on DNS error 2011-05-05 20:00:07 +02:00
imaputil.py cleanup import statements and conform to PEP-8 2011-03-14 21:35:33 +01:00
init.py Merge branch 'master' into next 2011-05-05 21:16:02 +02:00
localeval.py Update FSF address 2006-08-12 05:15:55 +01:00
mbnames.py Update FSF address 2006-08-12 05:15:55 +01:00
syncmaster.py cleanup import statements and conform to PEP-8 2011-03-14 21:35:33 +01:00
threadutil.py cleanup import statements and conform to PEP-8 2011-03-14 21:35:33 +01:00