Re: [PATCH] Make git prune remove temporary packs that look like write failures

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Feb 5, 2008 7:02 PM, Nicolas Pitre <nico@xxxxxxx> wrote:
> On Tue, 5 Feb 2008, David Steven Tweed wrote:
>
> > @@ -115,5 +139,6 @@ int cmd_prune(int argc, const char **argv, const char
> > *prefix)
> >
> >       sync();
> >       prune_packed_objects(show_only);
> > +     remove_temporary_files();
>
> Maybe you could implement the "show_only" mode for
> remove_temporary_files() as well?  Otherwise the -n option would not be
> respected.
>
> Also you should consider honoring the --expire option as well.

I guess the -n ought to be honoured. However, unless I'm missing
something, the case of expiring objects is different. The primary
reason is that objects can get orphaned by "semantic" decisions
(delete this branch, rewind, etc) so they contain valid content that
you might want to later rescue (using low-level command like git cat
if necessary). In contrast, the only way to get a temporary pack when
the repository is quiescent is resulting from a _write error_ and thus
is a corrupt entity which it would take a great deal of work to
extract any valid data from. (To be honest, I wouldn't be bothering to
delete them if it weren't for the fact that they can be quite big
files, and once you've got one from out-of-space you're more likely to
get another in future because you've got even less space.) So it's not
obvious that the same conditions should apply as to valid objects.

Does it really make sense to apply expire to these?

-- 
cheers, dave tweed__________________________
david.tweed@xxxxxxxxx
Rm 124, School of Systems Engineering, University of Reading.
"while having code so boring anyone can maintain it, use Python." --
attempted insult seen on slashdot
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux