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)
$ . "$TESTDIR/narrow-library.sh"
$ hg init repo
$ cd repo
$ cat << EOF > .hg/store/narrowspec
> [include]
> path:foo
> [exclude]
> EOF
$ cp .hg/store/narrowspec .hg/narrowspec.dirstate
$ echo treemanifest >> .hg/requires
$ echo narrowhg-experimental >> .hg/requires
$ mkdir -p foo/bar
$ echo b > foo/f
$ echo c > foo/bar/f
$ hg commit -Am hi
adding foo/bar/f
adding foo/f
$ hg debugindex -m
rev linkrev nodeid p1-nodeid p2-nodeid
0 0 14a5d056d75a 000000000000 000000000000
$ hg debugindex --dir foo
rev linkrev nodeid p1-nodeid p2-nodeid
0 0 e635c7857aef 000000000000 000000000000
$ hg debugindex --dir foo/
rev linkrev nodeid p1-nodeid p2-nodeid
0 0 e635c7857aef 000000000000 000000000000
$ hg debugindex --dir foo/bar
rev linkrev nodeid p1-nodeid p2-nodeid
0 0 e091d4224761 000000000000 000000000000
$ hg debugindex --dir foo/bar/
rev linkrev nodeid p1-nodeid p2-nodeid
0 0 e091d4224761 000000000000 000000000000
$ hg debugdata -m 0
foo\x00e635c7857aef92ac761ce5741a99da159abbbb24t (esc)
$ hg debugdata --dir foo 0
bar\x00e091d42247613adff5d41b67f15fe7189ee97b39t (esc)
f\x001e88685f5ddec574a34c70af492f95b6debc8741 (esc)
$ hg debugdata --dir foo/ 0
bar\x00e091d42247613adff5d41b67f15fe7189ee97b39t (esc)
f\x001e88685f5ddec574a34c70af492f95b6debc8741 (esc)
$ hg debugdata --dir foo/bar 0
f\x00149da44f2a4e14f488b7bd4157945a9837408c00 (esc)
$ hg debugdata --dir foo/bar/ 0
f\x00149da44f2a4e14f488b7bd4157945a9837408c00 (esc)