Discussion:
CVS Best Practice: cvs in conjunction with nfs?
Kenneth Wolcott
2009-03-19 21:06:23 UTC
Permalink
Hi;

Summary: CVS Best Practice: cvs in conjunction with nfs?

I recall from long ago being advised not to nfs mount the cvs repository.

I recall from long ago being advised to never build on an nfs partition.

Are either or both of these "wise proverbs" still pertinent today?

Lets say we are using a recent Linux kernel, or Solaris 9 or Solaris 10;
does the advice still hold?

Thanks,
Kenneth A. Wolcott
Larry Jones
2009-03-19 21:44:00 UTC
Permalink
Kenneth Wolcott writes:
>
> I recall from long ago being advised not to nfs mount the cvs repository.
> I recall from long ago being advised to never build on an nfs partition.
> Are either or both of these "wise proverbs" still pertinent today?

Both are.

> Lets say we are using a recent Linux kernel, or Solaris 9 or Solaris 10;
> does the advice still hold?

Yes. However, working directories on NFS mounts are reasonably safe,
whereas an NFS mounted repository should be avoided if at all possible.
If not, you should know that almost all of the known problems have been
caused by interoperability issues between different NFS implementations.
Thus, your best bet is if the server and client(s) are all the same
platform. If that's not possible, then using a commercially marketed
file server system (as opposed to a general purpose machine) is the next
best option.
--
Larry Jones

I'm not a vegetarian! I'm a dessertarian. -- Calvin
Arthur Barrett
2009-03-19 21:57:25 UTC
Permalink
Kenneth,

> I recall from long ago being advised not
> to nfs mount the cvs repository.

Yes that is the best advice.

Whilst Larry's suggestions are good, I would also like to point out that
if your repository becomes corrupt that:
A) you may not know of the corruption unless you are looking/testing for
it
B) there are no failsafe automated tools for testing the integrity of
CVS repositories
C) once a repository is corrupt, there is little chance to rescue the
data short of restoring a backup
D) no-one will sympathise with your predicament since the repository is
stored on a network share (NFS or SAMBA)

With the prevalence and low cost of iSCSI SAN alternatives I do not
think that there is any reason to use NFS/SAMBA/Network Shares for a CVS
repository today (if indeed there ever was).

Regards,


Arthur Barrett
Kenneth Wolcott
2009-03-20 00:49:28 UTC
Permalink
[Trying to learn to bottom-post]

On Thu, Mar 19, 2009 at 14:57, Arthur Barrett <***@march-hare.com
> wrote:

> Kenneth,
>
> > I recall from long ago being advised not
> > to nfs mount the cvs repository.
>
> Yes that is the best advice.
>
> Whilst Larry's suggestions are good, I would also like to point out that
> if your repository becomes corrupt that:
> A) you may not know of the corruption unless you are looking/testing for
> it
> B) there are no failsafe automated tools for testing the integrity of
> CVS repositories
> C) once a repository is corrupt, there is little chance to rescue the
> data short of restoring a backup
> D) no-one will sympathise with your predicament since the repository is
> stored on a network share (NFS or SAMBA)
>
> With the prevalence and low cost of iSCSI SAN alternatives I do not
> think that there is any reason to use NFS/SAMBA/Network Shares for a CVS
> repository today (if indeed there ever was).
>
> Regards,
>
> Arthur Barrett
>

Thank you, Larry and Arthur.

At this time we are in a Solaris 9 cluster (one group) with Veritas SAN
and two Solaris 10 machines (not clustered) with local disk and access to
network filer.

We are considering using ext protocol with ssh (wrapped so that it
operates exactly like local protocol) versus having the CVS repository
(local to Solaris 9 cluster) NFS-mounted onto the Solaris 10 machines.

I'm all for the former. I'm still leery of the latter.

Ken Wolcott
Larry Jones
2009-03-20 14:42:56 UTC
Permalink
Kenneth Wolcott writes:
>
> We are considering using ext protocol with ssh (wrapped so that it
> operates exactly like local protocol) versus having the CVS repository
> (local to Solaris 9 cluster) NFS-mounted onto the Solaris 10 machines.

I'd just have everyone (even users inside the cluster) use ext without
any wrapper in combination with a logical hostname for the server (e.g.,
cvshost.example.com). That will allow you to move the repository
around in the future without any impact to the clients.
--
Larry Jones

He just doesn't want to face up to the fact that I'll be
the life of every party. -- Calvin
Larry Jones
2009-03-20 15:06:48 UTC
Permalink
Arthur Barrett writes:
>
> B) there are no failsafe automated tools for testing the integrity of
> CVS repositories

That's true, but the contributed validate_repo (or check_cvs, if you're
using 1.11) script does a pretty good job. Anyone who uses a network
mounted repository should run it regularly (and often).
--
Larry Jones

It's no fun to play games with a poor sport. -- Calvin
Jaywant Nalawade
2009-03-21 07:05:39 UTC
Permalink
Hi,

This is Jaywant here . Recently I have configured CVS Server on Linux for our PHP development team. Regarding configuration of CVS server I have some queries.

1. Current my cvs root path is /usr/local/cvsroot and my web server path is /var/www/html/mydomain.com . My question is that, How my domain can put under CVS .

2. My second question is that I want to expose CVS on public IP . Currently CVS running on local IP.

Regards,
Jaywant Nalawade
http://www.c3itsolutions.com/
+91-206-640-1700 to 1714 Work
+91-202-605-2585 Telefax
Snail Mail: 39, Suyojana Society, Lane 5, Koregaon Park, Pune - 411 001, India

 Please save the trees ... and print this email only if absolutely necessary
_____________________________________________________________________________________________________________________________________________________________ This e-Mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary, confidential and exempt from disclosure. If you are not the intended recipient, you are notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender and erase this e-Mail message immediately.


-----Original Message-----
From: info-cvs-bounces+networkteam=***@nongnu.org [mailto:info-cvs-bounces+networkteam=***@nongnu.org] On Behalf Of Larry Jones
Sent: Friday, March 20, 2009 8:37 PM
To: Arthur Barrett
Cc: info-***@nongnu.org
Subject: Re: CVS Best Practice: cvs in conjunction with nfs?

Arthur Barrett writes:
>
> B) there are no failsafe automated tools for testing the integrity of
> CVS repositories

That's true, but the contributed validate_repo (or check_cvs, if you're
using 1.11) script does a pretty good job. Anyone who uses a network
mounted repository should run it regularly (and often).
--
Larry Jones

It's no fun to play games with a poor sport. -- Calvin
Peter Toft
2009-03-23 06:28:36 UTC
Permalink
On Thu, 19 Mar 2009, Kenneth Wolcott wrote:

> Hi;
>
> Summary: CVS Best Practice: cvs in conjunction with nfs?
>
> I recall from long ago being advised not to nfs mount the cvs repository.

Hi guys

I have been using CVS with NFS for many years with SSH as a bearer in a
multi-country setup for a large telecom - I have not seen any problems.
Only problem seen has been lost lock files once in a while, which had to
be removed. And we have had our fair share of network trashing - as anyone
else has from time to time. Our bottleneck has not been cvs for sure.
Our NFS servers are netapp boxes.

So the other replies in the same thread puzzle me a bit.

:)

/peter

>
> I recall from long ago being advised to never build on an nfs partition.
>
> Are either or both of these "wise proverbs" still pertinent today?
>
> Lets say we are using a recent Linux kernel, or Solaris 9 or Solaris 10;
> does the advice still hold?
>
> Thanks,
> Kenneth A. Wolcott
>

--
Peter Toft, Ph.D. [***@linuxbog.dk] http://petertoft.dk
I blog at http://www.version2.dk/blogs/petertoft
Todd Denniston
2009-03-23 13:49:27 UTC
Permalink
Peter Toft wrote, On 03/23/2009 02:28 AM:
> On Thu, 19 Mar 2009, Kenneth Wolcott wrote:
> Hi guys
>
> I have been using CVS with NFS for many years with SSH as a bearer in a
> multi-country setup for a large telecom - I have not seen any problems.
> Only problem seen has been lost lock files once in a while, which had to
> be removed. And we have had our fair share of network trashing - as
> anyone else has from time to time. Our bottleneck has not been cvs for
> sure.
> Our NFS servers are netapp boxes.
>
> So the other replies in the same thread puzzle me a bit.
>

So have you ran validate_repo (or check_cvs, if you're using 1.11) [As Larry
suggested] lately?

There may be corruption lurking somewhere in your repo that you just have not
noticed... My memory may be failing me, but many of the times that I have
seen NFS corruption, either personally or on this list, it was in the later
parts of the file, i.e., after the current version... So you would not see the
corruption unless you tried to check out an older version.

validate_repo|check_cvs may not be perfect, but they look for the usual
suspects of problems.

After the first detection, I set our server up to run that script in a cron
job so I could catch the faults before we rotated over the last good backup
before the corruption. Fortunately we moved to having the cvs server
processes run on the file server, and I have not had to ware that tee shirt
out for ~5 years now.

--
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane)
Harnessing the Power of Technology for the Warfighter
Arthur Barrett
2009-03-23 09:58:00 UTC
Permalink
Peter,

> I have been using CVS with NFS for many years with SSH as a
> bearer in a
> multi-country setup for a large telecom - I have not seen any
> problems.
> Only problem seen has been lost lock files once in a while,
> which had to
> be removed. And we have had our fair share of network
> trashing - as anyone
> else has from time to time. Our bottleneck has not been cvs for sure.
> Our NFS servers are netapp boxes.
>
> So the other replies in the same thread puzzle me a bit.

Could be:
A) you are lucky
B) you haven't discovered the corruption yet
C) you are less likely to observe the problems due to a particular
software stack (as Larry explained)
D) you were lucky until shortly before that phone started ringing... ;)

I've been to plenty of sites that have been running CVS repositories
over NFS for 'years' that suddenly find corruption - I don't personally
know why it hits, but I know running on a SAN or a local disk doesn't
cause it.

Regards,


Arthur
Larry Jones
2009-03-23 15:12:44 UTC
Permalink
Peter Toft writes:
>
> I have been using CVS with NFS for many years with SSH as a bearer in a
> multi-country setup for a large telecom - I have not seen any problems.
> Only problem seen has been lost lock files once in a while, which had to
> be removed. And we have had our fair share of network trashing - as anyone
> else has from time to time. Our bottleneck has not been cvs for sure.
> Our NFS servers are netapp boxes.
>
> So the other replies in the same thread puzzle me a bit.

It sounds like you're in the "pretty safe" zone -- you're using a file
server appliance for the NFS server and it sounds like you only have a
single NFS client accessing it (the CVS server). The real "danger zone"
is having a heterogeneous environment with lots of NFS clients accessing
an NFS server on a general purpose platform. If I were you, I'd still
run validate_repo on a regular basis, though.
--
Larry Jones

Monopoly is more fun when you make your own Chance cards. -- Calvin
Loading...