From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Unknown Newsgroups: gmane.emacs.devel Subject: vc-state-heuristic is gone Date: Sun, 23 Nov 2014 16:56:59 -0500 (EST) Message-ID: <20141123215659.2CA0C382F79@snark.thyrsus.com> NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1416779838 16481 80.91.229.3 (23 Nov 2014 21:57:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 23 Nov 2014 21:57:18 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Nov 23 22:57:12 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Xsf9b-0005aL-Vf for ged-emacs-devel@m.gmane.org; Sun, 23 Nov 2014 22:57:12 +0100 Original-Received: from localhost ([::1]:50120 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xsf9b-000340-Kg for ged-emacs-devel@m.gmane.org; Sun, 23 Nov 2014 16:57:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:57849) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xsf9U-00033t-Md for emacs-devel@gnu.org; Sun, 23 Nov 2014 16:57:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xsf9Q-0006ze-0U for emacs-devel@gnu.org; Sun, 23 Nov 2014 16:57:04 -0500 Original-Received: from static-71-162-243-5.phlapa.fios.verizon.net ([71.162.243.5]:49369 helo=snark.thyrsus.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xsf9P-0006za-Su for emacs-devel@gnu.org; Sun, 23 Nov 2014 16:56:59 -0500 Original-Received: by snark.thyrsus.com (Postfix, from userid 1000) id 2CA0C382F79; Sun, 23 Nov 2014 16:56:59 -0500 (EST) Original-From: esr@snark (Eric S. Raymond) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 71.162.243.5 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:178129 Archived-At: First, easiest gain from attacking the VC backend API with fire and sword: vc-state-heuristic is gone. vc-stay-local is probably next. These were attempts at performance optimizatiion that made sense when disk and network operations were much slower than they are now. I remember quite clearly that when I first wrote VC mode in 1992 I spent the majority of my effort on thinking up ways to avoid hitting the disk. But the tradeoffs have changed. The operations I was trying to avoid are much less expensive today, but the cost of the bugs and edge conditions produced by incautiously doing repository operations behind Emacs's back (and this rendering the caching and heuristics involved ivalid) has not dropped. If anything, it has risen. Thus, a brutal and effective simplification: *all caching goes away*. Affected back ends: SCCS, RCS, CVS, SVN, Bazaar. I've already tested with RCS and any change in preformance is now so small that a human is not capable of registering it. -- Eric S. Raymond A nation or civilization that continues to produce soft-minded men purchases its own spiritual death on an installment plan. --Martin Luther King, Jr.