fast-export produces incorrect trees

Bug #1890216 reported by Ben Hutchings
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Breezy
Triaged
High
Unassigned

Bug Description

Compare the results of fast-export from Bazaar and Breezy:

$ bzr checkout lp:libmemcached
$ git init libmemcached.git
$ bzr fast-export --git-branch=trunk-bzr libmemcached - \
| git -C libmemcached.git fast-import
$ brz fast-export --git-branch=trunk-brz libmemcached - \
| git -C libmemcached.git fast-import
$ git -C libmemcached.git diff --stat trunk-{bzr,brz}

Lots of files end up in the wrong places, as if renames aren't being exported correctly.

(Bazaar's fast-export also seems to produce incorrect results, unless I'm very confused. However, the differences between the content on Bazaar's trunk and the trunk-bzr that appears in git are much smaller.)

Jelmer Vernooij (jelmer)
Changed in brz:
status: New → Triaged
importance: Undecided → Critical
assignee: nobody → Jelmer Vernooij (jelmer)
Revision history for this message
Jelmer Vernooij (jelmer) wrote : Re: [Bug 1890216] [NEW] fast-export produces incorrect trees

On Mon, Aug 03, 2020 at 11:58:04PM -0000, Ben Hutchings wrote:
> Public bug reported:
>
> Compare the results of fast-export from Bazaar and Breezy:
>
> $ bzr checkout lp:libmemcached
> $ git init libmemcached.git
> $ bzr fast-export --git-branch=trunk-bzr libmemcached - \
> | git -C libmemcached.git fast-import
> $ brz fast-export --git-branch=trunk-brz libmemcached - \
> | git -C libmemcached.git fast-import
> $ git -C libmemcached.git diff --stat trunk-{bzr,brz}
>
> Lots of files end up in the wrong places, as if renames aren't being
> exported correctly.
>
> (Bazaar's fast-export also seems to produce incorrect results, unless
> I'm very confused. However, the differences between the content on
> Bazaar's trunk and the trunk-bzr that appears in git are much smaller.)

Ah, no wonder this is broken. There are tests for the fastimport
plugin but they all cover the import side and not the export side..

Revision history for this message
Colin Watson (cjwatson) wrote :

https://code.launchpad.net/~cjwatson/brz/fastimport-fix-directory-renames/+merge/410767 might conceivably be relevant to this, though I haven't checked.

Revision history for this message
Björn Kautler (vampire0) wrote :

This bug is marked as critical since 2.5 years and a fix is available since 1.5 years.
Will this ever get fixed?
Here another user struggling with this bug: https://stackoverflow.com/questions/75953013/migrating-a-bazaar-repo-to-git-path-not-in-branch-error/75994452

Revision history for this message
Jelmer Vernooij (jelmer) wrote (last edit ):

I agree it would be great to get this resolved, but breezy is a small community.

There is a change available that *might* be relevant for this bug, but that is also incomplete (it lacks tests and changes a fragile bit of code). As a start, it would be great if somebody could confirm that it actually fixes this bug.

Changed in brz:
assignee: Jelmer Vernooij (jelmer) → nobody
importance: Critical → High
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.