[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Rollback problems
From: |
Alex Sassmannshausen |
Subject: |
Re: Rollback problems |
Date: |
Fri, 25 Jan 2013 13:54:51 +0000 |
> > Let me illustrate. Suppose these generations:
>
> > A ------> B ------> C
>
> > When doing a roll-back from C, one should obviously get back at B. At
> > that point, C would still be available. Keeping it around means that
> > users can easily switch back to C if B turned out to be less
> > appropriate (this answers questions (1) and (2)).
>
> > Once at B, installing or removing packages would delete C, thus
> > allowing its generation number to be reused, and create a new
> > generation C’ with the same generation number as C:
>
> > A ------> B ------> C’
>
> > At this point, switching back to C is no longer possible.
I agree too. Plus, it seems like a neat mechanism.
I guess a generation would only be destroyed at a junction, not when moving
back and forth in straight lines.
A ------> B ------> C
You could travel from C back to A and back to C without having to re-install
packages...
Looking forward to seeing it implemented.
Alex
On Fri, 25 Jan 2013, 02:44:39 GMT, Nikita Karetnikov <address@hidden> wrote:
> > 3. More generally, should the history of generations be linear, or
> > should it be a DAG like Git commits?
>
> If the latter is the case, then we can probably use a simple tree. Here
> is a related link: [1].
>
> > Regarding (3), it seems that a linear history not only simplifies the
> > implementation, but also the user interface, while covering most
> > practical use cases.
>
> I agree.
>
> > Let me illustrate. Suppose these generations:
>
> > A ------> B ------> C
>
> > When doing a roll-back from C, one should obviously get back at B. At
> > that point, C would still be available. Keeping it around means that
> > users can easily switch back to C if B turned out to be less
> > appropriate (this answers questions (1) and (2)).
>
> > Once at B, installing or removing packages would delete C, thus
> > allowing its generation number to be reused, and create a new
> > generation C’ with the same generation number as C:
>
> > A ------> B ------> C’
>
> > At this point, switching back to C is no longer possible.
>
> I like the idea.
>
> Nikita
>
> [1] http://learnyouahaskell.com/zippers#a-very-simple-file-system
- Rollback problems, Andreas Enge, 2013/01/23
- Re: Rollback problems, Ludovic Courtès, 2013/01/27
- Re: Rollback problems, Andreas Enge, 2013/01/28
- Re: Rollback problems, Ludovic Courtès, 2013/01/28
- Re: Rollback problems, Nikita Karetnikov, 2013/01/24
Re: Rollback problems, Ludovic Courtès, 2013/01/27