On Wed, Nov 26, 2014 at 11:15 AM, Jan Nijtmans <jan.nijtm...@gmail.com>
wrote:

> 2014-11-26 16:53 GMT+01:00 Richard Hipp <d...@sqlite.org>:
> > The new field is used to ensure that one does not "purge" a baseline
> > manifest without also purging all its deltas, since to do otherwise would
> > render the deltas unusable.  It should be impossible to do that because
> the
> > purge command removes a checkin and all its descendents and all deltas
> of a
> > baseline manifest must be decendants of the baseline.  But it feels nice
> to
> > have that extra check in place, just as an added safety measure.
>
> How about letting the "fossil purge" command check whether
> the PLINK table has the "baseid" field? So, everyone who
> doesn't do a "fossil rebuild" will be prevented to do a
> "fossil purge", instead a fatal saying "please do a 'fossil rebuild'
> first!". The manifest_crosslink() function should only fill this
> field when the "baseid" is available. So, only two places
> in the code which need an additional check.
>
> This way no-one is forced to do a "fossil rebuild", only the
> people refusing that won't have the "purge" functionality.
>

That results in a lot of complex logic on the parts of the code that
populate the PLINK.BASEID column.  Fossil is complex enough already without
this feature.

-- 
D. Richard Hipp
d...@sqlite.org
_______________________________________________
fossil-dev mailing list
fossil-dev@lists.fossil-scm.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/fossil-dev

Reply via email to