All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org,
	Johannes Schindelin <Johannes.Schindelin@gmx.de>,
	Jeff Hostetler <git@jeffhostetler.com>,
	Derrick Stolee <stolee@gmail.com>
Subject: Re: What's cooking in git.git (Jun 2021, #07; Wed, 30)
Date: Thu, 01 Jul 2021 15:42:23 +0200	[thread overview]
Message-ID: <87r1gicfh1.fsf@evledraar.gmail.com> (raw)
In-Reply-To: <xmqq4kdft122.fsf@gitster.g>


On Wed, Jun 30 2021, Junio C Hamano wrote:

> * jh/builtin-fsmonitor (2021-05-24) 30 commits
>  - t/perf: avoid copying builtin fsmonitor files into test repo
>  - t7527: test status with untracked-cache and fsmonitor--daemon
>  - p7519: add fsmonitor--daemon
>  - t7527: create test for fsmonitor--daemon
>  - fsmonitor: force update index after large responses
>  - fsmonitor: enhance existing comments
>  - fsmonitor--daemon: use a cookie file to sync with file system
>  - fsmonitor--daemon: periodically truncate list of modified files
>  - fsmonitor--daemon: implement handle_client callback
>  - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
>  - fsmonitor-fs-listen-macos: add macos header files for FSEvent
>  - fsmonitor-fs-listen-win32: implement FSMonitor backend on Windows
>  - fsmonitor--daemon: create token-based changed path cache
>  - fsmonitor--daemon: define token-ids
>  - fsmonitor--daemon: add pathname classification
>  - fsmonitor--daemon: implement daemon command options
>  - fsmonitor-fs-listen-macos: stub in backend for MacOS
>  - fsmonitor-fs-listen-win32: stub in backend for Windows
>  - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon
>  - fsmonitor--daemon: implement client command options
>  - fsmonitor--daemon: add a built-in fsmonitor daemon
>  - fsmonitor: introduce `core.useBuiltinFSMonitor` to call the daemon via IPC
>  - config: FSMonitor is repository-specific
>  - help: include fsmonitor--daemon feature flag in version info
>  - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
>  - fsmonitor--daemon: update fsmonitor documentation
>  - fsmonitor--daemon: man page
>  - simple-ipc: preparations for supporting binary messages.
>  - Merge branch 'jk/perf-in-worktrees' into HEAD
>  - Merge branch 'jh/simple-ipc' into jh/rfc-builtin-fsmonitor
>
>  An attempt to write and ship with a watchman equivalent tailored
>  for our use.
>
>  What's the status of this one?

I think Johannes's reply to the last WC applies[1]:

    I am not Jeff, but I know that he is busy getting back to it, and
    plans on submitting a third iteration.

FWIW I'm still curious about some details on the performance concerns
that seem to have prompted this built-in fsmonitor endeavor, as I asked
about (but didn't get a reply to) in [2].

Not as a "we shouldn't have this, let's keep using the hook", but just
curiosity about why we've seemingly gotten such different performance
numbers on the watchman hook v.s. a built-in approach.

I suspect (but don't know) that the reason is that the built-in is
perhaps integrating differently with git somehow, in a way that we could
retrofit the hook approach to also do (if anyone still cares about the
hook approach).

In any case I'm interested in *why* the new approach is faster, given
that I've done some testing (again, noted in [2]) that suggest that
bottleneck in the previous pipeline wasn't at all what Jeff H. thought
it was.

1. https://lore.kernel.org/git/nycvar.QRO.7.76.6.2106171135530.57@tvgsbejvaqbjf.bet/#t
2. https://lore.kernel.org/git/87h7lgfchm.fsf@evledraar.gmail.com/

  parent reply	other threads:[~2021-07-01 13:48 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-30 22:55 What's cooking in git.git (Jun 2021, #07; Wed, 30) Junio C Hamano
2021-07-01  0:02 ` Felipe Contreras
     [not found] ` <CAFQ2z_PYJMzOBcN+KoQSfdD-eYtZVzrArL0Dh-YW-q3R8hgm2w@mail.gmail.com>
2021-07-01  7:19   ` Han-Wen Nienhuys
2021-07-01 13:06     ` Ævar Arnfjörð Bjarmason
2021-07-01 13:42 ` Ævar Arnfjörð Bjarmason [this message]
2021-07-01 14:20   ` Jeff Hostetler
2021-07-01 14:00 ` Ævar Arnfjörð Bjarmason
2021-07-01 15:21   ` Junio C Hamano
2021-07-02 12:18     ` Ævar Arnfjörð Bjarmason
2021-07-02 16:05       ` Junio C Hamano
2021-07-01 16:51   ` Jeff King
2021-07-01 16:20 ` Jeff King
2021-07-03  5:04 ` Elijah Newren
2021-07-05  8:03   ` Ævar Arnfjörð Bjarmason
2021-07-05 12:02     ` Jeff King
2021-07-06 13:46   ` Phillip Wood
2021-07-06 19:29     ` Ævar Arnfjörð Bjarmason
2021-07-06 20:36       ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r1gicfh1.fsf@evledraar.gmail.com \
    --to=avarab@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@jeffhostetler.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=stolee@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.