<DKIM> Re:[offlineimap] Duplicates of messages copied from remote to local (#174)

Nicolas Sebrecht nicolas.s-dev at laposte.net
Wed Jul 22 01:39:14 BST 2015


Hi,

Thank you much for the git bisect. I'm copying Jana Martl so she can
check if she see find something.

Peter, please check without autorefresh. I have doubts about this
option.

On Mon, Jul 20, 2015 at 10:52:26PM +0100, Peter Lewis wrote:

> Hi,
> 
> A long time ago, in May, I described an issue I was having with
> OfflineIMAP, whereby occasionally it would duplicate all the mails in
> a folder, by redownloading them.
> 
> This was a recently introduced and intermittent fault (typically once
> every few days), so was difficult to track down. Nicholas suggested to
> try a git bisect, since it's a regression.
> 
> So, since then, I have been attempting to git bisect OfflineIMAP. I have
> ended up with this commit being the culprit:
> 
> https://github.com/OfflineIMAP/offlineimap/commit/25513e90387f60831b94c6041de08db5ba12e95f
> 
> I don't know the codebase, so can't comment further, but it seems
> plausible, given the commit message and a quick look at the code.
> 
> Note that this is a best guess bisect -- since the fault was
> intermittent, I did a "git bisect good" after about a week of
> usage of a particular version without any mail duplication.
> 
> I also noticed that it only seems to affect the Inbox of an account,
> though this has been on two accounts, and this might have been
> coincidence.
> 
> Under this email is a slimmed down version of my config, showing just
> one of the affected accounts. I also took some seemingly irrelevant
> things out, such as [mbnames].
> 
> Two slightly interesting things to point out from my config:
> 
> 1) I use IDLE on the affected folder,
> 2) I use some nametrans stuff to map folder names.
> 
> Not sure if either of those should affect this.
> 
> Peter.
> 
> 
> 
> [general]
> 
> metadata = ~/.offlineimap
> 
> accounts = Personal
> ui = ttyui
> ignore-readonly = no
> socktimeout = 120
> 
> 
> folderfilter = lambda accountname,foldername: not re.search('(Trash$|Archive|Queue$|Calendar$|Contacts$|Journal$|Sync$|Tasks$)', foldername)
> 
> 
> ##################################################
> # Accounts
> ##################################################
> 
> 
> [Account Personal]
> 
> localrepository = LocalPersonal
> remoterepository = RemotePersonal
> 
> autorefresh = 5
> 
> 
> [Repository LocalPersonal
> 
> type = Maildir
> 
> localfolders = ~/mail
> 
> sep = /
> 
> restoreatime = no
> 
> # Reverse nametrans (or filter them out)
> 
> # Convert local folder names to remote ones:
> 
> nametrans = lambda foldername: re.sub('^Personal '',
>                             re.sub('^Personal 'INBOX', foldername))
> 
> # This puts Personal before INBOX, then removes all the Personal prefixes.
> 
> # But only sync things from the Personal account:
> 
> folderfilter = lambda foldername: re.search('^Personal foldername)
> 
> 
> 
> [Repository RemotePersonal
> 
> type = IMAP
> 
> remotehost = example.com
> 
> ssl = yes
> 
> remoteuser = me
> 
> preauthtunnel = ssh -q example.com 'sudo /usr/lib/dovecot/imap -u me at example.com'
> 
> 
> ########## Advanced settings
> 
> maxconnections = 1
> 
> holdconnectionopen = no
> 
> subscribedonly = no
> 
> nametrans = lambda foldername: re.sub('^Personal\.INBOX$', 'Personal',
>                                 re.sub('^', 'Personal.', foldername))
> 
> idlefolders = ['INBOX']
> 
> 

-- 
Nicolas Sebrecht




More information about the OfflineIMAP-project mailing list