Comment 13 for bug 1266763

Revision history for this message
Louis Bouchard (louis) wrote :

I am affraid that the whole logic of the patch is incorrect. The reason why the test above fails is that, when the "starting backup from the beginning" occurs, duplicity does the following :

                log.Notice(_("RESTART: The first volume failed to upload before termination.\n"
                             " Restart is impossible...starting backup from beginning."))
                self.last_backup.delete()
                os.execve(sys.argv[0], sys.argv, os.environ)

So the os.execve restart a new duplicity instance while the lock is being present, hence the concurrency warning & exit. I think that close scrutiny is required in order to implement proper locking.

I'm looking into it, but I would appreciate Ken's vision of my analysis