On Tue, Apr 18, 2023 at 10:02:44AM -0400, Derrick Stolee wrote: > On 4/18/2023 12:12 AM, Jeff King wrote: > > > One thing the commit graph perhaps _could_ do is omit the commit, or > > mark it as "this one is broken in some way". And then fall back to > > parsing those few instead (which is slower, but if it's a small minority > > of commits, that's OK). But I don't think there's any code for that. > > The "broken" commit would need to be included in the commit-graph file > so its children can point to it using a graph position, but then it > would revert to parsing from the commit object (due to some new concept > storing "this is a bad commit"). > > If we decided to treat a timestamp of 0 as "probably broken, artificial > at best" then we wouldn't need the new indicator in the commit-graph > file, but this seems like quite a big hammer for a small case. Makes sense. I punted on doing anything here for the series I just posted, since the workaround of "blow away your commit graph and rebuild" is probably sufficient for such obscure cases. And going forward, new commit graphs would be built with the fixed parser anyway, so it becomes less of a problem over time. -Peff