Issue 2491 optimize 'slightlyOptimizePatchset' for big inventories

Title optimize 'slightlyOptimizePatchset' for big inventories
Priority Status unknown
Milestone Resolved in
Superseder Nosy List gh, owst
Assigned To

Created on 2016-01-25.17:55:45 by gh, last changed 2016-01-26.10:50:00 by gh.

msg18963 (view) Author: gh Date: 2016-01-25.17:55:44
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:


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

We should understand what is the source of this issue. Memory profiling
would be useful to do.
Date User Action Args
2016-01-25 17:55:45ghcreate
2016-01-26 10:50:00ghsetnosy: + owst