On 2019-06-03 at 12:47 +0100, Patrick O'Callaghan wrote:
> On Mon, 2019-06-03 at 13:40 +0200, Ralf Mardorf via evolution-list
> wrote:
> > On Mon, 2019-06-03 at 12:06 +0100, Patrick O'Callaghan wrote:
> > > Personally, I don't back up Evolution explicitly. I do back up my home
> > > directory every night (using rsnapshot) but this almost always happens
> > > while my session is logged in. I have been doing this for years and
> > > have never lost an email. I probably also helps that my accounts are
> > > IMAP-based, so what's in the local Evolution store is mostly cached
> > > information.
> > > 
> > > So it's not clear to me that stopping Evo during a backup is actually
> > > necessary.
> > 
> > Even if you would use POP accounts and Evolution would automatically
> > download messages during the backup, it shouldn't matter.
> 
> Yes, I would expect that. My question is whether all of Evo's database
> operations are transactional, though I'm supposing they are.
> 
> In which case I think the argument about how to make sure Evo is
> stopped before doing a backup is pointless. Just don't stop it.
> 
> poc


Even if a program is transactional, it only guarantees the state at a
given point of time. Not that you can run a generic backup program in
the background while the program works and that it will be consistent.

In order to do that you would need to work on a frozen filesystem. For
instance using LVM. btrfs also supports making a snapshot of a volume,
which is atomic. Then you could run your backup program over that copy,
and then (optionally) remove the snapshot.

Suppose you were working locally on a maildir while you are running
tar(1) for making a backup.¹

1- tar reads the list of files on cur/ and starts reading them one by
one to store them
2- you read a message, it gets renamed from
1528146778.123_0.evolution:2, to 1528146778.123_0.evolution:2,S
3- tar attempts to backup ‘1559682696.123_0.evolution:2,’, but as it's
not there, will log an error and continue.

The file has been on your mailbox for a year. The rename itself is
atomic. A power failure would not lose that file [if it's on a journaled
fs]. Yet your backup missed it.



Kind regards


¹ This is a general race condition, most other programs would have the
same problem.

_______________________________________________
evolution-list mailing list
evolution-list@gnome.org
To change your list options or unsubscribe, visit ...
https://mail.gnome.org/mailman/listinfo/evolution-list

Reply via email to