Chris Lamb [2015-12-28 21:18 +0000]: > ./test_blame.sh > ln: failed to create symbolic link > ‘/tmp/tmp.qdthkLehjc/data/packages/unstable/amd64/f/foobar/20151228_221440.autopkgtest.log.gz’: > File exists > ln: failed to create symbolic link > ‘/tmp/tmp.VTKBDbCmvI/data/packages/unstable/amd64/f/foobar/20151228_221449.autopkgtest.log.gz’: > File exists
I see that in Ubuntu's production CI tests too, and I can reproduce it reliably. Keeping some notes from my initial investigation for the record: - Tests currently use real-time timestamps, and as a single process() run usually takes less than a second, the chance that two successive calls to process() use the same timestamp is thus very high. - process() does "__day=$(($__day + 1))" but that's not being used anywhere. The intention was certainly to use that to forge the timestamps. - This happened until http://anonscm.debian.org/cgit/collab-maint/debci.git/commit/?id=499f3d0f which removed the usage of faketime. Antonio says that using faketime created other problems. - One possibility is to add a "sleep 1" to process() so that the time stamps are guaranteed to be different. This makes the tests a tad slower, but would at least fix this RC bug for the time being. Martin -- Martin Pitt | http://www.piware.de Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org)