Make sure that "svnadmin upgrade" never leaves an FSFS repository in a
commit7e959b1fb2070d2f03692354b3715c40d2618512
authorglasser <glasser@612f8ebc-c883-4be0-9ee0-a4e9ef946e3a>
Fri, 29 Feb 2008 19:41:09 +0000 (29 19:41 +0000)
committerglasser <glasser@612f8ebc-c883-4be0-9ee0-a4e9ef946e3a>
Fri, 29 Feb 2008 19:41:09 +0000 (29 19:41 +0000)
tree888e260bea29d6b16bbae8dc047f050b9633388d
parent64a4385f5278b85a723dbdbfe7617fea48425b18
Make sure that "svnadmin upgrade" never leaves an FSFS repository in a
broken state.

Specifically, in the unlikely event that "svnadmin upgrade" failed
between creating the txn-current (or txn-current-lock) files and
changing the version file, the repository would have been left in
"format 2", but running "svnadmin upgrade" again would fail in trying
to create those files.

* subversion/libsvn_fs_fs/fs_fs.c
  (create_file_ignore_eexist): New.
  (upgrade_body): Use new helper to ignore EEXIST errors when creating
   txn-current and its lock.

git-svn-id: http://svn.collab.net/repos/svn/trunk@29642 612f8ebc-c883-4be0-9ee0-a4e9ef946e3a
subversion/libsvn_fs_fs/fs_fs.c