I just reproduced this locally, but got a very different traceback (and more the one I would expect / what I had hoped we had fixed). Using lp:bzr/2.0 I inserted a 'import pdb; pdb.set_trace()' in _do_autopack just after it decides it needs to do one. I then ran 'bzr commit' until it stopped, once that happened I started another commit in the other window, let it stop at the same place, continued on the first, and the second failed with: ... File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\pack_repo.py", line 1472, in autopack return self._do_autopack() File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\pack_repo.py", line 1513, in _do_autopack reload_func=self._restart_autopack) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\groupcompress_repo.py", line 691, in _execute_pack_operations result = packer.pack() File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\pack_repo.py", line 760, in pack return self._create_pack_from_packs() File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\groupcompress_repo.py", line 473, in _create_pack_from_packs self._copy_revision_texts() File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\groupcompress_repo.py", line 411, in _copy_revision_texts 'revisions', self._get_progress_stream, 1) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\groupcompress_repo.py", line 400, in _copy_stream reuse_blocks=False): File "C:\Users\jameinel\dev\bzr\swork\bzrlib\groupcompress.py", line 1663, in _insert_record_stream for record in stream: File "C:\Users\jameinel\dev\bzr\swork\bzrlib\repofmt\groupcompress_repo.py", line 207, in pb_stream for idx, record in enumerate(substream): File "C:\Users\jameinel\dev\bzr\swork\bzrlib\groupcompress.py", line 1423, in get_record_stream orig_keys, ordering, include_delta_closure): File "C:\Users\jameinel\dev\bzr\swork\bzrlib\groupcompress.py", line 1582, in _get_remaining_record_stream for factory in batcher.yield_factories(full_flush=True): File "C:\Users\jameinel\dev\bzr\swork\bzrlib\groupcompress.py", line 1146, in yield_factories block_read_memo, block = blocks.next() File "C:\Users\jameinel\dev\bzr\swork\bzrlib\groupcompress.py", line 1379, in _get_blocks zdata = raw_records.next() File "C:\Users\jameinel\dev\bzr\swork\bzrlib\knit.py", line 3364, in get_raw_records reader = pack.make_readv_reader(transport, path, offsets) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\pack.py", line 221, in make_readv_reader transport.readv(filename, readv_blocks))) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\transport\__init__.py", line 656, in readv return self._readv(relpath, offsets) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\transport\__init__.py", line 668, in _readv fp = self.get(relpath) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\transport\local.py", line 167, in get self._translate_error(e, path) File "C:\Users\jameinel\dev\bzr\swork\bzrlib\transport\__init__.py", line 306, in _translate_error raise errors.NoSuchFile(path, extra=e) NoSuchFile: No such file: u'C:/Users/jameinel/dev/,tmp/remote-mem-test/.bzr/repository/packs/54548bdc2dfdbe29ff0a46e298e4fd38.pack': [Errno 2] No such file or directory: u'C:/Users/jameinel/dev/,tmp/remote-mem-test/.bzr/repository/packs/54548bdc2dfdbe29ff0a46e298e4fd38.pack' Looking at it, I see the 'reload_func=self_restart_autopack' line, so it should have tried to restart, but it certainly doesn't seem to have triggered. Will investigate further.