On 4 May 2016, at 1:35pm, Rob Willett <rob.sqlite at robertwillett.com> wrote:

> I think that unless we can get the C API to back up in a time close to that 
> of a cp, the easiest solution is to suspend updates for 10-15 mins 
> out-of-hours and do a simple cp from there. Sometimes a change in workflow 
> might be the easiest and simplest solution.

This solution may be what you eventually come up with.  But I would like to 
comment that I used a Unix platform to copy 15 Gigabytes through FireWire from 
an external hard disk yesterday and that took less than 10 minutes.  Simply 
duplicating a 10 Gigabyte file onto your boot drive should take considerably 
less time.

You may be able to use built-in SQLite mechanisms to suspend updates.  It might 
be worth using the SQLite shell tool to execute "BEGIN IMMEDIATE" and see 
whether that does suspend operations.

On the other hand there's a lot to be said for running a script at 3am which 
quits the update program, takes the snapshot, then starts them up again.  Not 
only will this perform the task needed but it would also serve to 'reset' those 
updating programs in case they have a slow resource leak or some other 
long-term bug.

Simon.

Reply via email to