Project

General

Profile

Bug #5292

findunref is both slow and broken

Added by Rich Lowe over 5 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
tools - gate/build tools
Start date:
2014-11-06
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

The findunref support for git lost a condition that gated the retrieval of the git manifest on us not already having one, which means that we run 'git ls-files' many, many, many times. On i386 with a hot cache, this actually doesn't stand out. Should you try to use it on SPARC, however, it'll probably take a couple of hours...

In fixing this, we found another rather cute bug, whereby because we were regenerating the manifest per-directory, if we walked a directory such that we entered a subdirectory before processing all files, we may fail to process some of those files, leaving them as constant false negatives.

Yuck.

History

#1

Updated by Electric Monk over 5 years ago

  • % Done changed from 80 to 100
  • Status changed from New to Closed

git commit b998737654179ec0e068e04f6fda6e76777171c9

commit  b998737654179ec0e068e04f6fda6e76777171c9
Author: Richard Lowe <richlowe@richlowe.net>
Date:   2014-11-16T20:32:28.000Z

    5292 findunref is both slow and broken
    Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
    Reviewed by: Joshua Clulow <josh@sysmgr.org>
    Reviewed by: Gordon Ross <gwr@nexenta.com>
    Approved by: Dan McDonald <danmcd@omniti.com>

Also available in: Atom PDF