You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by gi...@uk.linedata.com on 2009/01/13 14:48:25 UTC

svnsync vs hotcopy

I am trying to come up with a DR plan for our Subversion server. We are using a RHEL4 server with Subversion 1.4.4 and Apache 2.0. I've read the "Repository Replication" and "Repository Backup" sections of the SVN Book, but I'm still unsure.

Basically there are two possibilities: using svnsync or hotcopy. In my opinion svnsync is preferable, and here's why.

Once the mirrored repository has been initialised and synced the first time, the amount of data sent for the next synchronisations is minimum. With a hotcopy instead, the full repository is sent every time.

Although svnsync does not copy changes to properties in older revision, which obviously hotcopy does, this is not a big deal to me as we only change the svn:log property for the just committed revision (to tide the revision up with our in-house bug-tracking system). I just need to be careful and call svnsync after the log has been updated.

In case of a DR, using hotcopy it would be just a matter of changing the DNS to point to the new IP address, and the users would never even know that we had a DR. However, I understand that if I am careful and set the UUID of the mirrored repository to the same of the real one, changing the DNS is the only thing I would have to do even if I use svnsync.

With svnsync, hooks are not copied. I'm actualy not sure whether that's the case with hotcopy too or not, but it doesn't matter to me. All hooks are versioned in a separate repository, so it would be just a matter of setting up the correct symbolic link.

Any comments on what I said so far?

I know that changing the mirrored repository is not recommended, but can I checkout a WC of it on the mirror server? And keep it up-to-date using the post-commit script (so that it's updated every time the repository is synced with the real one)?

Thanks
Giulio

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1022018

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

Re: svnsync vs hotcopy

Posted by Les Mikesell <le...@gmail.com>.
Paul Koning wrote:
> I wouldn't do that.  Not unless changes are locked out during the copy.
> "svn hotcopy" guarantees to copy the bits in the right order to ensure
> database integrity, but some other copy sequence may not do that and
> rsync may happen to copy in such a sequence.

I sometimes do an rsync, then repeat it until nothing changes but even 
that probably isn't 100% bulletproof...

-- 
   Les Mikesell
    lesmikesell@gmail.com

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1024200

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

RE: svnsync vs hotcopy

Posted by km...@rockwellcollins.com.
Paul Koning <Pa...@Dell.com> wrote on 01/14/2009 05:51:57 AM:
> I wouldn't do that.  Not unless changes are locked out during the copy.
> "svn hotcopy" guarantees to copy the bits in the right order to ensure
> database integrity, but some other copy sequence may not do that and
> rsync may happen to copy in such a sequence.

As far as I know, the worst than can happen with a fsfs repository is that
the db/current file is out of date with respect to the actual revision.
(I.E. you would potentially be missing a revision.)
I believe svnadmin recover can now fix this problem too.

That being said, if you have the disk space and the time, a hotcopy is
still the best (and probably preferred) way.

Kevin R.

>    paul
> 
> > -----Original Message-----
> > From: Ron Olson [mailto:tachoknight@gmail.com]
> > Sent: Tuesday, January 13, 2009 11:48 PM
> > To: giulio.troccoli@uk.linedata.com
> > Cc: users@subversion.tigris.org
> > Subject: Re: svnsync vs hotcopy
> > 
> > Hi-
> > 
> > Dunno if this will help, but I do a nightly rsync to another location;
> > it avoids the full copy of hotcopy and is pretty darn fast. Since it's
> > a full-blown copy of the repo, all the svn stuff is there; I've been
> > able to restore to a new disk and it's worked perfectly.
> > 
> > Your milage may vary, of course, but this particular setup works for
> > me.
> > 
> > 
> > On Tue, Jan 13, 2009 at 8:48 AM,  <gi...@uk.linedata.com>
> > wrote:
> > > I am trying to come up with a DR plan for our Subversion server. We
> > are using a RHEL4 server with Subversion 1.4.4 and Apache 2.0. I've
> > read the "Repository Replication" and "Repository Backup" sections of
> > the SVN Book, but I'm still unsure.
> > >
> > > Basically there are two possibilities: using svnsync or hotcopy. In
> > my opinion svnsync is preferable, and here's why.
> > >
> > > Once the mirrored repository has been initialised and synced the
> > first time, the amount of data sent for the next synchronisations is
> > minimum. With a hotcopy instead, the full repository is sent every
> > time.
> > >
> > > Although svnsync does not copy changes to properties in older
> > revision, which obviously hotcopy does, this is not a big deal to me
> as
> > we only change the svn:log property for the just committed revision
> (to
> > tide the revision up with our in-house bug-tracking system). I just
> > need to be careful and call svnsync after the log has been updated.
> > >
> > > In case of a DR, using hotcopy it would be just a matter of changing
> > the DNS to point to the new IP address, and the users would never even
> > know that we had a DR. However, I understand that if I am careful and
> > set the UUID of the mirrored repository to the same of the real one,
> > changing the DNS is the only thing I would have to do even if I use
> > svnsync.
> > >
> > > With svnsync, hooks are not copied. I'm actualy not sure whether
> > that's the case with hotcopy too or not, but it doesn't matter to me.
> > All hooks are versioned in a separate repository, so it would be just
> a
> > matter of setting up the correct symbolic link.
> > >
> > > Any comments on what I said so far?
> > >
> > > I know that changing the mirrored repository is not recommended, but
> > can I checkout a WC of it on the mirror server? And keep it up-to-date
> > using the post-commit script (so that it's updated every time the
> > repository is synced with the real one)?
> > >
> > > Thanks
> > > Giulio
> > >
> > > ------------------------------------------------------
> > >
> >
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessage
> > Id=1022018
> > >
> > > To unsubscribe from this discussion, e-mail: [users-
> > unsubscribe@subversion.tigris.org].
> > >
> 
> ------------------------------------------------------
> 
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1024046
> 
> To unsubscribe from this discussion, e-mail: 
[users-unsubscribe@subversion.tigris.org].

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1024460

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

RE: svnsync vs hotcopy

Posted by Paul Koning <Pa...@Dell.com>.
I wouldn't do that.  Not unless changes are locked out during the copy.
"svn hotcopy" guarantees to copy the bits in the right order to ensure
database integrity, but some other copy sequence may not do that and
rsync may happen to copy in such a sequence.

	paul

> -----Original Message-----
> From: Ron Olson [mailto:tachoknight@gmail.com]
> Sent: Tuesday, January 13, 2009 11:48 PM
> To: giulio.troccoli@uk.linedata.com
> Cc: users@subversion.tigris.org
> Subject: Re: svnsync vs hotcopy
> 
> Hi-
> 
> Dunno if this will help, but I do a nightly rsync to another location;
> it avoids the full copy of hotcopy and is pretty darn fast. Since it's
> a full-blown copy of the repo, all the svn stuff is there; I've been
> able to restore to a new disk and it's worked perfectly.
> 
> Your milage may vary, of course, but this particular setup works for
> me.
> 
> 
> On Tue, Jan 13, 2009 at 8:48 AM,  <gi...@uk.linedata.com>
> wrote:
> > I am trying to come up with a DR plan for our Subversion server. We
> are using a RHEL4 server with Subversion 1.4.4 and Apache 2.0. I've
> read the "Repository Replication" and "Repository Backup" sections of
> the SVN Book, but I'm still unsure.
> >
> > Basically there are two possibilities: using svnsync or hotcopy. In
> my opinion svnsync is preferable, and here's why.
> >
> > Once the mirrored repository has been initialised and synced the
> first time, the amount of data sent for the next synchronisations is
> minimum. With a hotcopy instead, the full repository is sent every
> time.
> >
> > Although svnsync does not copy changes to properties in older
> revision, which obviously hotcopy does, this is not a big deal to me
as
> we only change the svn:log property for the just committed revision
(to
> tide the revision up with our in-house bug-tracking system). I just
> need to be careful and call svnsync after the log has been updated.
> >
> > In case of a DR, using hotcopy it would be just a matter of changing
> the DNS to point to the new IP address, and the users would never even
> know that we had a DR. However, I understand that if I am careful and
> set the UUID of the mirrored repository to the same of the real one,
> changing the DNS is the only thing I would have to do even if I use
> svnsync.
> >
> > With svnsync, hooks are not copied. I'm actualy not sure whether
> that's the case with hotcopy too or not, but it doesn't matter to me.
> All hooks are versioned in a separate repository, so it would be just
a
> matter of setting up the correct symbolic link.
> >
> > Any comments on what I said so far?
> >
> > I know that changing the mirrored repository is not recommended, but
> can I checkout a WC of it on the mirror server? And keep it up-to-date
> using the post-commit script (so that it's updated every time the
> repository is synced with the real one)?
> >
> > Thanks
> > Giulio
> >
> > ------------------------------------------------------
> >
>
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessage
> Id=1022018
> >
> > To unsubscribe from this discussion, e-mail: [users-
> unsubscribe@subversion.tigris.org].
> >

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1024046

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].


Re: svnsync vs hotcopy

Posted by Ron Olson <ta...@gmail.com>.
Hi-

Dunno if this will help, but I do a nightly rsync to another location;
it avoids the full copy of hotcopy and is pretty darn fast. Since it's
a full-blown copy of the repo, all the svn stuff is there; I've been
able to restore to a new disk and it's worked perfectly.

Your milage may vary, of course, but this particular setup works for me.


On Tue, Jan 13, 2009 at 8:48 AM,  <gi...@uk.linedata.com> wrote:
> I am trying to come up with a DR plan for our Subversion server. We are using a RHEL4 server with Subversion 1.4.4 and Apache 2.0. I've read the "Repository Replication" and "Repository Backup" sections of the SVN Book, but I'm still unsure.
>
> Basically there are two possibilities: using svnsync or hotcopy. In my opinion svnsync is preferable, and here's why.
>
> Once the mirrored repository has been initialised and synced the first time, the amount of data sent for the next synchronisations is minimum. With a hotcopy instead, the full repository is sent every time.
>
> Although svnsync does not copy changes to properties in older revision, which obviously hotcopy does, this is not a big deal to me as we only change the svn:log property for the just committed revision (to tide the revision up with our in-house bug-tracking system). I just need to be careful and call svnsync after the log has been updated.
>
> In case of a DR, using hotcopy it would be just a matter of changing the DNS to point to the new IP address, and the users would never even know that we had a DR. However, I understand that if I am careful and set the UUID of the mirrored repository to the same of the real one, changing the DNS is the only thing I would have to do even if I use svnsync.
>
> With svnsync, hooks are not copied. I'm actualy not sure whether that's the case with hotcopy too or not, but it doesn't matter to me. All hooks are versioned in a separate repository, so it would be just a matter of setting up the correct symbolic link.
>
> Any comments on what I said so far?
>
> I know that changing the mirrored repository is not recommended, but can I checkout a WC of it on the mirror server? And keep it up-to-date using the post-commit script (so that it's updated every time the repository is synced with the real one)?
>
> Thanks
> Giulio
>
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1022018
>
> To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].
>

Re: svnsync vs hotcopy

Posted by Ron Olson <ta...@gmail.com>.
Hi-

Dunno if this will help, but I do a nightly rsync to another location;
it avoids the full copy of hotcopy and is pretty darn fast. Since it's
a full-blown copy of the repo, all the svn stuff is there; I've been
able to restore to a new disk and it's worked perfectly.

Your milage may vary, of course, but this particular setup works for me.


On Tue, Jan 13, 2009 at 8:48 AM,  <gi...@uk.linedata.com> wrote:
> I am trying to come up with a DR plan for our Subversion server. We are using a RHEL4 server with Subversion 1.4.4 and Apache 2.0. I've read the "Repository Replication" and "Repository Backup" sections of the SVN Book, but I'm still unsure.
>
> Basically there are two possibilities: using svnsync or hotcopy. In my opinion svnsync is preferable, and here's why.
>
> Once the mirrored repository has been initialised and synced the first time, the amount of data sent for the next synchronisations is minimum. With a hotcopy instead, the full repository is sent every time.
>
> Although svnsync does not copy changes to properties in older revision, which obviously hotcopy does, this is not a big deal to me as we only change the svn:log property for the just committed revision (to tide the revision up with our in-house bug-tracking system). I just need to be careful and call svnsync after the log has been updated.
>
> In case of a DR, using hotcopy it would be just a matter of changing the DNS to point to the new IP address, and the users would never even know that we had a DR. However, I understand that if I am careful and set the UUID of the mirrored repository to the same of the real one, changing the DNS is the only thing I would have to do even if I use svnsync.
>
> With svnsync, hooks are not copied. I'm actualy not sure whether that's the case with hotcopy too or not, but it doesn't matter to me. All hooks are versioned in a separate repository, so it would be just a matter of setting up the correct symbolic link.
>
> Any comments on what I said so far?
>
> I know that changing the mirrored repository is not recommended, but can I checkout a WC of it on the mirror server? And keep it up-to-date using the post-commit script (so that it's updated every time the repository is synced with the real one)?
>
> Thanks
> Giulio
>
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1022018
>
> To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].
>