Diffing commits of big files is slow
dcl441-bugs at yahoo.com
Mon Jun 22 00:51:37 BST 2009
In a pack-0.92 branch with latest Bazaar (1.17dev), I replaced a 40 Mb video with a newer version (30Mb).
I am intrigued as to why the following operations are so slow:
- at the GTK interface (bzr vis), click on that particular revision to see the diff. An strace revealed that Bzr was comparing lots of binary data
- bzr diff -r 40: it stops some seconds until it can say: === modified file 'videos/Patata.ogg'. Binary files videos/Patata.ogg 2009-06-18 21:29:07 +0000 and videos/Patata.ogg 2009-06-21 22:45:25 +0000 differ
The two videos are clearly different right in the headers, so testing for inequality could be instant. What else does Bazaar do and why is this favorable to the user?
Format 2a has also this non-instant diff.
More information about the bazaar