fast-export fails on previously split branch

Bug #338781 reported by David O'Callaghan on 2009-03-06
2
Affects Status Importance Assigned to Milestone
Bazaar Fast Import
Low
Unassigned

Bug Description

I attempted to run "bzr fast-export" on a branch and it crashed. This branch had previously been split off larger branch using "bzr split". The crash occurs when running the command with output directed to a file.

I have also run a similar command with output directed to "git fast-import" and in this case the import is successful up to the revision where the split occurred, so it appears to be related to the split.

Let me know if I need to provide further details.

Note, if I run with "--checkpoint=1" it gets as far as "bzr fast-export: Exported 11 commits - checkpointing". Revision 12 is the revision in which the split was made.

Ian Clatworthy (ian-clatworthy) wrote :

I don't have a fix for this yet but I've added some earlier checking to revision 147. Can you try again with that version and attach the exception please?

As best I can tell so far, a FileCommand within a CommitCommand is being created with an empty path. I'm not sure why. Once I understand the root cause, we can talk about what the right/best behaviour is.

Hi,

On 08/03/09 12:48, Ian Clatworthy wrote:
> I don't have a fix for this yet but I've added some earlier checking to
> revision 147. Can you try again with that version and attach the
> exception please?

Attached as test147.log

> As best I can tell so far, a FileCommand within a CommitCommand is being
> created with an empty path. I'm not sure why. Once I understand the root
> cause, we can talk about what the right/best behaviour is.

Perhaps this could be due to the "split" commit including a rename:

perl =>

(That is, the subdir "perl" was renamed to "", the root). See (edited)
rev12.log.

Kind regards,

David

--
Dr David O'Callaghan
 Research Fellow - Grid-Ireland - e-INIS - Computer Architecture & Grid
Department of Computer Science, Telephone: +353 1 896 1720
Trinity College, Dublin 2, Ireland Email: <email address hidden>

I came up with a workaround for my particular problem. The solution is to export the revisions before and after the split, skipping the split revision and filtering the pre-split revisions:

    (bzr fast-export -r1..11 ~/src/repo | bzr fast-import-filter -i subdir/ -; bzr fast-export -r13..19 ~/src/repo) | git fast-import

The resulting repo contains only the history related to the split-off subdir, which is what I wanted.

tags: added: export
Changed in bzr-fastimport:
importance: Undecided → Low
status: New → Triaged
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers