bzr log lies/is inconsistent about changed files

Bug #545132 reported by Frits Jalvingh
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
Confirmed
Medium
Unassigned

Bug Description

On our 2a format repo:
jal@odeon:~/bzr/vp-trunk$ bzr log viewpoint/src/JSprinter/JSprinterGen.java
------------------------------------------------------------
revno: 236 [merge]
committer: Wouter
branch nick: vp-trunk
timestamp: Fri 2009-11-13 15:03:23 +0100
message:
  Proficon integratie.
------------------------------------------------------------
revno: 4
committer: Frits Jalvingh <email address hidden>
branch nick: vp-trunk
timestamp: Thu 2009-08-27 20:30:46 +0200
message:
  Initial commit of vp-trunk
------------------------------------------------------------
revno: 2
committer: Frits Jalvingh <email address hidden>
branch nick: vp-3.2-hot
timestamp: Thu 2009-08-27 20:20:17 +0200
message:
  Initial commit of vp-3.2-hot
------------------------------------------------------------
revno: 1
committer: Frits Jalvingh <email address hidden>
branch nick: vp-3.1-hot
timestamp: Thu 2009-08-27 20:16:59 +0200
message:
  Initial commit of 3.1-hot
------------------------------------------------------------
Use --include-merges or -n0 to see merged revisions.

Then try:
jal@odeon:~/bzr/vp-trunk$ bzr log -v -r 236 -n0
------------------------------------------------------------
revno: 236 [merge]
committer: Wouter
branch nick: vp-trunk
timestamp: Fri 2009-11-13 15:03:23 +0100
message:
  Proficon integratie.
modified:
  viewpoint/src/iRed/Svb/Maintenance/ComplexAggregatie.java
    ------------------------------------------------------------
    revno: 130.113.20
    committer: Wouter
    branch nick: vp-3.3-hot
    timestamp: Fri 2009-11-13 14:56:13 +0100
    message:
      Refactor & toevoegen commentaar.
    modified:
      viewpoint/src/iRed/Svb/Maintenance/ComplexAggregatie.java

This is inconsistent: log lies about what changed in some contexts. What is worse, it looks like that commit 236 somehow touched almost *all* files in the repo: asking the log for lots of files show those as changed in that commit too.

This looks a bit like the effect we had when we hit bug 415508; but the repository was recreated from scratch since then and nothing from the failed repository was used in the new one. And regardless of the reason *why* this occured- if this commit has a lot of changed texts attached to it it should show them, so the error becomes obvious quicker also.

description: updated
Revision history for this message
Frits Jalvingh (fjalvingh) wrote :

Version used:

jal@odeon:~/bzr/vp-trunk$ bzr version
Bazaar (bzr) 2.1.0
  Python interpreter: /usr/bin/python 2.6.4
  Python standard library: /usr/lib/python2.6
  Platform: Linux-2.6.31-20-generic-x86_64-with-Ubuntu-9.10-karmic
  bzrlib: /usr/lib/python2.6/dist-packages/bzrlib
  Bazaar configuration: /home/jal/.bazaar
  Bazaar log file: /home/jal/.bzr.log

Copyright 2005, 2006, 2007, 2008, 2009 Canonical Ltd.
http://bazaar-vcs.org/

bzr comes with ABSOLUTELY NO WARRANTY. bzr is free software, and
you may use, modify and redistribute it under the terms of the GNU
General Public License version 2 or later.

Bazaar is part of the GNU Project to produce a free operating system.

Revision history for this message
Martin Pool (mbp) wrote :

Does diff show that JSprinterGen.java was actually changed between 235 and 236, or not?

Changed in bzr:
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Frits Jalvingh (fjalvingh) wrote :

No, the diff only shows that single file as changed.

Revision history for this message
Frits Jalvingh (fjalvingh) wrote :

Hm. Somehow a lot of crud has attached itself to this single commit. I pulled up to revision 235 into a new repo which results in:
jal@odeon:~/test$ bzr branch -r 235 ~/bzr/vp-trunk
Branched 235 revision(s).
jal@odeon:~/test/vp-trunk$ bzr repository-details ..
Commits: 2189
                      Raw % Compressed % Objects
Revisions: 975 KiB 0% 196 KiB 0% 2189
Inventories: 179235 KiB 27% 5285 KiB 3% 15356
Texts: 465721 KiB 72% 141394 KiB 96% 25741
Signatures: 0 KiB 0% 0 KiB 0% 0
Total: 645932 KiB 100% 146876 KiB 100% 43286

Extra Info: count total avg stddev min max
internal node refs 1967 501585 255.0 0.0 255 255
internal p_id refs 542 133548 246.4 44.5 3 255
inv depth 8775 17550 2.0 0.0 2 2
leaf node items 8775 531612 60.6 12.2 28 132
leaf p_id items 1883 93929 49.9 55.8 1 613
p_id depth 1883 4471 2.4 0.8 2 4

So this revision has 25741 text's attached in history. Now pulling that single one-file commit:

jal@odeon:~/test/vp-trunk$ bzr pull -r 236 ~/bzr/vp-trunk
 M viewpoint/src/iRed/Svb/Maintenance/ComplexAggregatie.java
All changes applied successfully.
Now on revision 236.
jal@odeon:~/test/vp-trunk$ bzr repository-details ..
Commits: 2191
                      Raw % Compressed % Objects
Revisions: 976 KiB 0% 197 KiB 0% 2191
Inventories: 187080 KiB 26% 7815 KiB 5% 15808
Texts: 506023 KiB 72% 148053 KiB 94% 29682
Signatures: 0 KiB 0% 0 KiB 0% 0
Total: 694080 KiB 100% 156066 KiB 100% 47681

Extra Info: count total avg stddev min max
internal node refs 1969 502095 255.0 0.0 255 255
internal p_id refs 542 133548 246.4 44.5 3 255
inv depth 9223 18446 2.0 0.0 2 2
leaf node items 9223 561364 60.9 12.1 28 132
leaf p_id items 1883 93929 49.9 55.8 1 613
p_id depth 1883 4471 2.4 0.8 2 4

The #of texts increased to 29682 (+3941) in that single one-file commit.

By itself this looks like the same bug that hit us with content filtering on a --1.14 repo has hit us partially here - which more than bothers me because it cannot be the same bug we had earlier:
- We fully upgraded to bzr 2.x, and have not used older versions since
- I talked with the programmer that did that commit and he was certain he used the correct version
- The repo was fully recreated from scratch as a --2a repo
In addition the number of texts added in this commit is way less as the other bug was causing if I remember correctly - I would expect it to equal the #of text files in the tree if it was the same bug...

Regardless of how this commit came to be (which I am hugely bothered about) log should still show those files as touched by that commit I think..

BTW: does diff also show permission bit (x) changes?

Jelmer Vernooij (jelmer)
tags: added: log
Jelmer Vernooij (jelmer)
tags: added: check-for-breezy
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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