Subject: bug#8025: 24.0.50; vc-bzr does not perform initial commit

From: Christoph Scholtes <[email-masked]>
Date: Tue, 01 Mar 2011 22:55:46 -0700

Eli Zaretskii <[email-masked]> writes:

> It would be good to at least understand why it fails.  

I agree. I just saw that Glenn started looking into it.

> That file is full of binary nulls, so this could be something specific
> to Windows.

No, unfortunately it is not. I tested it on ArchLinux with the latest
emacs trunk and bzr 2.3.0 and it behaves exactly the same.

> Can you give performance numbers with the current code in the Emacs
> trunk branch?

I did some testing with elp on Windows.

Test case: Instrument functions with `vc-' prefix with
elp-instrument-package.  Modified BUGS in the trunk root. C-x v v to
commit with buffer asking to enter commit message.  C-x k to kill buffer
and abort commit.  Get results with elp-results.

1. Using stock vc-bzr.el from the trunk.

Result:
vc-bzr-state-heuristic     3     0.174            0.0579999999
                                                  ^^^^^^^^^^^^

2. Using modified vc-bzr.el forcing vc-bzr-state-heuristic function to use
vc-bzr-state function instead of its own logic.

Result:
vc-bzr-state-heuristic     3     1.5230000000     0.5076666666
                                                  ^^^^^^^^^^^^

Roughly an order of 10 difference, but 0.5s is not really `excruciatingly
slow' in my book.

Christoph