When importing git's git repository to darcs (using the current darcs
HEAD) I ended up with 47K patches inside of a single
tentative_hashed_inventory file.
The last step of the import is a call to slightlyOptimizePatchset, which
shows the message "Optimizing inventory".
After 1 hour of computation of this function I killed darcs, moved
tentative_hashed_inventory to hashed_inventory and ran "darcs repair",
which worked. Here is the `_darcs` of the repository:
https://dl.dropboxusercontent.com/u/6239815/gitALL._darcs.uncomp.tar.7z
To run slightlyOptimizePatchset on that repo, one way is to run "darcs
optimize reorder" , which will run
Darcs.Repository.Internal.reorderInventory, do some patch replacement
and then call HashedRepo.finalizeTentativeChanges which will call
slightlyOptimizePatchset.
We should understand what is the source of this issue. Memory profiling
would be useful to do.
|