Dear Mark, Could you please answer my query about the isolation level for transactions in Subversion? Is it always the highest which does not allow for any transaction anomalies ? Is there a switch which lowers the isolation level in Subversion transactions (at the risk of introducing transaction anomalies)?
Many thanks, Ashim On Thu, Mar 31, 2022 at 4:54 PM Ashim Kapoor <ashimkap...@gmail.com> wrote: > > Dear Mark, > > Many thanks for the explanation. > > Best Regards, > Ashim > > On Thu, Mar 31, 2022 at 4:45 PM Mark Phippard <markp...@gmail.com> wrote: > > > > On Thu, Mar 31, 2022 at 5:47 AM Ashim Kapoor <ashimkap...@gmail.com> wrote: > > > > > My fs-type is fsfs. > > > > > > My svn version is 1.10.4 > > > > > > I am using a project management tool called Redmine which is the front > > > end for SVN projects and which in turn is relying on Apache as a web > > > server. > > > > > > 1. I wish to use : > > > > > > svnadmin dump my-repository > my-repository-backup.dump > > > > > > on a daily basis at the same time to backup my-repository. > > > > > > Then I think that I do *** not *** need to turn off Apache while > > > doing the above. > > > > Correct. > > > > Subversion is transactional. The dump file might not include commits > > that happen after the process begins but it will be a complete > > representation of your repository up until whatever the final revision > > it records. > > > > > I do not wish to use svnadmin hotcopy since it's output is not as > > > portable as svnadmin dump's output. I would need the same filesystem > > > to restore the svnadmin hotcopy output. > > > > This is not really true. The fsfs format is portable across all known > > versions of SVN. 15+ years ago I even used to use it to transport > > repositories between an EBCDIC-based IBM AS/400 and Windows. > > > > The nice thing about hotcopy is that you can now run it against an > > existing hotcopy and it will just "catch up". The other nice thing is > > that it copies the hook scripts. The restore process is also > > significantly faster and easier than a dump file. > > > > What is not nice is that it can copy a partial transaction so you > > could have to do some manual recovery to use a backup, It is pretty > > easy to do. > > > > The other option to consider is svnsync to a backup, This is harder to > > implement but gives best of both worlds. It is transactional, but it > > will only do a catch up sync to an existing backup so it is fast. Your > > backup is a live repository that you could easily switch to. > > > > > > > 2. Suppose the www-data user is writing to the SVN repositories. My > > > query is : Should I put the backup cron job into the www-data user's > > > crontab or the root user's crontab? > > > > > > My repository is owned by user : www-data and group : root > > > > I would use www-data. No point in using root if you do not need to. > > That said, I think you could also use root. > > > > What you should not do is use root to restore the repository. If you > > do, then all of the repository files will be owned by root and > > unreadable by your server until you run chown. > > > > Mark