tags-cache: skip the filternode step if we are not going to use it
When warming the hgtagsfnodescache, we don't need the actual result, so we can
simply skip the part that "filter" fnode we read from the cache. So provide a
quite visible speed up to the top level `hg debugupdatecache` function.
### data-env-vars.name = mozilla-try-2023-03-22-zstd-sparse-revlog
# benchmark.name = hg.debug.debug-update-cache
# bin-env-vars.hg.flavor = default
# bin-env-vars.hg.py-re2-module = default
# benchmark.variants.pre-state = warm
before: 19.947581
after: 18.916804 (-5.17%, -1.03)
#require no-windows
$ . "$TESTDIR/remotefilelog-library.sh"
$ hg init master
$ cd master
$ cat >> .hg/hgrc <<EOF
> [remotefilelog]
> server=True
> EOF
$ echo x > foo
$ echo y > bar
$ hg commit -qAm one
$ cd ..
# partial shallow clone
$ hg clone --shallow ssh://user@dummy/master shallow --noupdate --config remotefilelog.includepattern=foo
streaming all changes
4 files to transfer, 336 bytes of data (no-zstd !)
transferred 336 bytes in * seconds (* */sec) (glob) (no-zstd !)
4 files to transfer, 338 bytes of data (zstd no-rust !)
transferred 338 bytes in * seconds (* */sec) (glob) (zstd no-rust !)
6 files to transfer, 464 bytes of data (zstd rust !)
transferred 464 bytes in * seconds (*/sec) (glob) (zstd rust !)
searching for changes
no changes found
$ cat >> shallow/.hg/hgrc <<EOF
> [remotefilelog]
> cachepath=$PWD/hgcache
> debug=True
> includepattern=foo
> reponame = master
> [extensions]
> remotefilelog=
> EOF
$ ls shallow/.hg/store/data
bar.i
# update partial clone
$ cd shallow
$ hg update
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob)
$ cat foo
x
$ cat bar
y
$ cd ..
# pull partial clone
$ cd master
$ echo a >> foo
$ echo b >> bar
$ hg commit -qm two
$ cd ../shallow
$ hg pull
pulling from ssh://user@dummy/master
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 0 changes to 0 files
new changesets a9688f18cb91
(run 'hg update' to get a working copy)
$ hg update
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob)
$ cat foo
x
a
$ cat bar
y
b
$ cd ..