Comment 9 for bug 405317

Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 405317] Re: Huge Performance regressions in bazaar 1.16 and higher

So, what we know:
 - diff of a historical inventory is ~2 seconds
 - status in the tree is 1-15 seconds.

From the log:
> [25175] 2009-07-29 14:53:03.840 INFO: Committing to: /home/jal/bzr/vp-trunk/

called in the started() reporter method, which is right before

> 0.809 Selecting files for commit with filter []

_update_builder_with_changes

> [25175] 2009-07-29 14:54:02.037 INFO: modified viewpoint/.settings/org.eclipse.wst.common.component

is the first output found and reported, which could be from
_filter_iter_changes or from _record_entry (_populate_from_inventory),
and nearly a minute after the started call.

Some possibilities are:
 - thrashing
 - extremely slow IO
 - extremely slow iter_changes

however, iter_changes is rule out by the stat performance.

So, I'd like to get an lsprof trace.

Can you please start doing your commits thusly;
bzr commit --lsprof-file commit.callgrind commit -m "foo"

This will create a commit.callgrind, and while it doesn't record
wallclock time, if the problem is internal to bzr, we will at least be
able to see the codepaths being used.

Thanks,
Rob