Comment 0 for bug 495000

Revision history for this message
Gareth White (gwhite-deactivatedaccount) wrote : NoSuchFile error when committing concurrently

When committing at the same time to different branches in a shared repository, the commit will occasionally fail with an error such as:
aborting commit write group: NoSuchFile(No such file: 'C:/code/testrepo/.bzr/repository/packs/e5c831b49ebe63551656348d6b6ae931.pack')

See attached log for the full output.

It looks like both commits are trying to do the autopack and one is failing because the other has already done it. I've reproduced this with and without a smart server, but it seems easier to reproduce with a smart server. I've tested it with both Bazaar 2.0.1 and 2.1.0b3 using Python 2.5 on Windows XP SP3.

To reproduce:
bzr init-repo --no-trees testrepo
bzr init testrepo\branch1
bzr init testrepo\branch2
start bzr serve --allow-writes
bzr checkout --lightweight bzr://localhost/testrepo/branch1
bzr checkout --lightweight bzr://localhost/testrepo/branch2

In separate windows, repeat the following command many times simultaneously:
commit -m "test" --unchanged

(Note: This also happens even if committing real changes. We've noticed it just by having 3 developers using the same repository at the same time. It makes us worried about how it would scale to 30+.)