Hi, I just noticed that the order of operations at the end of fast-import are: - end_packfile - dump_branches - dump_tags The first may create loose objects if the pack is small (per fastimport.unpackLimit, defaulting to 100). The latter two create refs. There seems to be a theoretical race condition here, if something else triggers a gc at the "wrong" time, the loose objects might be cleaned up and the branches/tags refs become dangling. I understand that the packfile does need to be finished before creating the refs, and that the unpacking replaces that when there aren't enough objects, but wouldn't it be more data-safe to actually finish the pack, create the refs, and then unpack? Mike