From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Glenn Morris Newsgroups: gmane.emacs.bugs Subject: bug#42966: 28.0.50; vc-dir: wrong backend Date: Mon, 26 Oct 2020 17:54:19 -0400 Message-ID: References: <54k0vq420i.fsf@fencepost.gnu.org> <87pn5h1j4b.fsf@gnus.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="34255"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) Cc: Lars Ingebrigtsen , sds@gnu.org, 42966@debbugs.gnu.org To: Dmitry Gutov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Oct 26 22:55:28 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kXASe-0008o3-Ck for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 26 Oct 2020 22:55:28 +0100 Original-Received: from localhost ([::1]:46274 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kXASd-0006NJ-0B for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 26 Oct 2020 17:55:27 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:36418) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kXASE-0006Kv-7D for bug-gnu-emacs@gnu.org; Mon, 26 Oct 2020 17:55:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:58468) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kXASD-0003lM-Ra for bug-gnu-emacs@gnu.org; Mon, 26 Oct 2020 17:55:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kXASD-0005Ri-PS for bug-gnu-emacs@gnu.org; Mon, 26 Oct 2020 17:55:01 -0400 X-Loop: help-debbugs@gnu.org In-Reply-To: Resent-From: Glenn Morris Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 26 Oct 2020 21:55:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42966 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: fixed Original-Received: via spool by 42966-submit@debbugs.gnu.org id=B42966.160374926720886 (code B ref 42966); Mon, 26 Oct 2020 21:55:01 +0000 Original-Received: (at 42966) by debbugs.gnu.org; 26 Oct 2020 21:54:27 +0000 Original-Received: from localhost ([127.0.0.1]:41781 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXARf-0005Qo-5i for submit@debbugs.gnu.org; Mon, 26 Oct 2020 17:54:27 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:36210) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXARe-0005Qb-1T for 42966@debbugs.gnu.org; Mon, 26 Oct 2020 17:54:26 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:36023) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kXARY-0003jZ-Gy; Mon, 26 Oct 2020 17:54:20 -0400 Original-Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1kXARX-0004gL-OG; Mon, 26 Oct 2020 17:54:19 -0400 X-Spook: AMEMB Domestic security Failure Tehrik-i-Taliban Pakistan X-Ran: .3=0&K=6B,^T}GX\xg*$q7Op/v0P(-Y$8%[q)&$1A*(7(F:(>T)>RH% List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:191673 Archived-At: Dmitry Gutov wrote: >> That makes sense, but it's just a performance hack, isn't it? The >> result should be the same as the less invasive "loop over all the >> backends and collect the most specific one". > > Pretty much. Except it should naturally limit the traversal up the > directory tree, so it feels like a good architecture, not just a > "hack". Indeed, it just seems like the Right Thing to Do, not a hack. Not having been paying attention, I was surprised to see the adopted solution goes for "loop over every VC backend, and every directory up the tree, then filter the results", rather than "walk up the directory tree, stopping when a backend claims responsibility". I would think efficiency matters in such a frequent operation. As a (completely unscientific) data point, my first single core bootstrap build after this change took about 5% longer than before (22m5s v 21m4s). But of course a single measurement means nothing.