emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Suggestion: vc-hooks.el: Make vc-handled-backends more conservative?


From: Stefan Monnier
Subject: Re: Suggestion: vc-hooks.el: Make vc-handled-backends more conservative?
Date: Mon, 09 Oct 2006 23:23:13 -0400
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

> The last two --arch and MCVS have a particularly bad performance
> penalty on systems that have NFS mounts in places other than /net
> or /afs --- se variable vc-ignore-dir-regexp

> Unless one discovers the above variable (vc-ignore-dir-regexp is
> declared as a defvar, and not as defcustom)
> nfs based systems take a heavy performance hit --- since function
> vc-find-root recursively ascends the directory tree in attempting
> to check if files are under version control.

> Suggestions:

> A) Possibly make vc-handled-backends more conservative by pruning
>         it to have RCS CVS and SVN on it by default.

> B)      Make vc-ignore-dir-regexp a customizable option via
> defcustom,
>         and add a pointer to it in the docstring for
>         vc-handled-backends so that users discover its purpose

I think B is a good idea in general.  Especially since vc-ignore-dir-regexp
is useful not just for NFS mounts but for any other circumstance where the
user wants to disable VC in some part of his file-system.

I think A might be a good idea as well.  MetaCVS is a rather obscure
revision control system.  GNU Arch is less so, but it's not that popular
either.  And there are several more still unsupported but whose support
should hopefully come at some point (Mercury, bzr, git, DaRCS, monotone,
codeville, OpenCM, you-name-it).  So we most likely will not want *all*
supported systems to be "active".  Maybe now is not the worst time to start
down that road.

>         In my case I chased it down by examining the source code after
>         observing that emacs was making excessive nfs accesses during file
>         load and save.

Just to make sure that it can only be fixed with something like
vc-ignore-dir-regexp, could you describe the particular circumstance where
this happens, as well as describe as precisely as possible what
actually happens?


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]