On Thu, Aug 05, 2021 at 09:05:59PM +0200, Ævar Arnfjörð Bjarmason wrote: > > On Wed, Aug 04 2021, Jeff King wrote: > > > [...] > > If we don't go that route, there's another possible speedup: after > > parsing a tag, the type of tag->tagged (if it is not NULL) will be known > > from the tag's contents, and we can avoid the oid_object_info_extended() > > type lookup. It might need some extra surgery to convince the tag-parse > > not to fetch promisor objects, though. > > > > I'm not sure it would make that big a difference, though. If we save one > > type-lookup per parsed tag, then the tag parsing is likely to dwarf it. > > Except that the tag type can be a lie, as our tests and some recent > object/fsck serieses (not yet integrated) from me show. It can be relied > upon for >99.99% of cases, but code like that needs to make sure it's > not segfaulting or whatever if that relationship doesn't hold. Yes, but we'd discover that when we called repo_parse_commit(), and Patrick's patch already handles failure there. -Peff