On Monday, January 09, 2017 05:55:45 AM Jeff King wrote: > On Mon, Jan 09, 2017 at 04:01:19PM +0900, Mike Hommey wrote: > > > That's _way_ more complicated than your problem, and > > > as I said, I do not have a finished solution. But it > > > seems like they touch on a similar concept (a > > > post-delete holding area for objects). So I thought > > > I'd mention it in case if spurs any brilliance. > > > > Something that is kind-of in the same family of problems > > is the "loosening" or objects on repacks, before they > > can be pruned. ... > Yes, this can be a problem. The repack is smart enough not > to write out objects which would just get pruned > immediately, but since the grace period is 2 weeks, that > can include a lot of objects (especially with history > rewriting as you note). It would be possible to write > those loose objects to a "cruft" pack, but there are some > management issues around the cruft pack. You do not want > to keep repacking them into a new cruft pack at each > repack, since then they would never expire. So you need > some way of marking the pack as cruft, letting it age > out, and then deleting it after the grace period expires. > > I don't think it would be _that_ hard, but AFAIK nobody > has ever made patches. FYI, jgit does this, -Martin -- The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation