Performance regression with pack format in missing

Bug #174625 reported by Dato Simó on 2007-12-07
Affects Status Importance Assigned to Milestone
John A Meinel
bzr (Debian)
Fix Released

Bug Description

(This comes from

Trying to play around with the new pack storage format... I came
across this 30% regression in performance for "bzr missing":

guest@mirexpress:~/repo$ for i in * ; do echo == $i == ; cd $i ; bzr info ; cd sid ; bzr missing --line ../trunk &> /dev/null ; bzr missing --line ../trunk &> /dev/null ;
time bzr missing --line ../trunk ; cd ../../ ; done
== gforge-dirstate ==
Shared repository (format: dirstate-with-subtree)
  shared repository: .
Branches are up to date.

real 0m4.727s
user 0m4.596s
sys 0m0.056s
== gforge-pack ==
Shared repository (format: pack-0.92-subtree)
  shared repository: .
Branches are up to date.

real 0m6.370s
user 0m6.236s
sys 0m0.088s
== gforge-rich-root ==
Shared repository (format: rich-root)
  shared repository: .
Branches are up to date.

real 0m4.725s
user 0m4.596s
sys 0m0.056s

All three repositories have been recently created (no trees), and the
sid and trunk branches cloned from my main (dirstate-with-subtree)
repo therefore have the same contents (about 5000 revisions, 5400
files, 52 MB). Of course, running "bzr pull" instead of "bzr missing"
gives similar results here, since the branches are up-to-date.

 affects /products/bzr

Related branches

Martin Albisetti (beuno) on 2008-03-07
Changed in bzr:
importance: Undecided → Medium
status: New → Confirmed
Changed in bzr:
status: Unknown → Confirmed
John A Meinel (jameinel) wrote :

I'm working on updating missing to use the new Graph.find_* apis which avoid traversing the whole graph.

Changed in bzr:
assignee: nobody → jameinel
status: Confirmed → In Progress
John A Meinel (jameinel) wrote :

The change has been finished and submitted for review.

Changed in bzr:
milestone: none → 1.6
status: In Progress → Fix Committed
John A Meinel (jameinel) wrote :

In, will be in 1.6

Changed in bzr:
status: Fix Committed → Fix Released
Changed in bzr (Debian):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.