The patch below allows pack() to work properly on Windows. Windows won't let you use rename() to replace an existing file, which is the case when you run pack() for a second time (the previous prepack_name file is still out there). So the existing code results in the following error: OSError: [Errno 17] File exists Let me know if you need anything else. Index: file_storage.py =================================================================== --- file_storage.py (revision 684) +++ file_storage.py (working copy) @@ -263,6 +263,8 @@ packed.close() unlock_file(self.fp) self.fp.close() + if os.path.exists(prepack_name): + os.unlink(prepack_name) os.rename(self.filename, prepack_name) os.rename(pack_name, self.filename) if RENAME_OPEN_FILE: -- Patrick K. O'Brien Orbtech http://www.orbtech.com Schevo http://www.schevo.org Pypersyst http://www.pypersyst.org