← Back to team overview

kicad-developers team mailing list archive

Re: Autosave BS

 

Hello, Chris!

Thank you for considering crashes + loss of data/autosaves as *very* *serious* issue!

Crashes with data-loss and "no idea what I changed exactly since the last manual or autosave" happens to me in M****r P**S way too often and this is the *main* reason to migrate to KiCad being debug-friendly.


My suggestions:

1. Never ever delete something automatically - even not when the program closes successfully!

2. Keep the autosaved stuff with the design name + a timestamp in the filename.

3. Super feature: Remember the very last design step which was done (i.e. the Undo buffers) and save it to the file as well to be able to know where to continue and to be able to trigger a potential bug again by repeating the last step.

4. Store the autosave optionally in a hidden folder to avoid confusion with regular saved files. Confusion might lead to data-loss when operator is tired after routing a 484 ball FPGA.

5. Assist in cleaning up old autosaved data - use a dialog with a clear warning what will be deleted and ask for a confirmation.

Having a design error caused by a software crash can cost more than 4TB of Harddisk space.


Regards,

Clemens


On 2017-01-24 00:26, Chris Pavlina wrote:
> I'm talking to someone on IRC right now who lost two hours of routing
> because pcbnew crashed, then deleted his autosave file before he could
> make use of it. We need to put some new efforts into:
> 
> 1. Never delete autosave data. He may have accidentally saved the board
> before loading the autosave, I'm not sure - pcbnew deletes autosave when
> saving - but there should be some proper protection against this.
> 
> 2. Never overwrite potentially useful autosave data - if pcbnew is
> reloaded, a previous autosave shouldn't be deleted either. It should
> only be valid to delete autosave data if the board has not been modified
> since the autosave was made.
> 
> 3. Better recovery UI when loading after a crash.
> 
> It may be necessary to record in the autosave file which run of pcbnew
> it was created in (timestamp at startup?) to distinguish between old
> autosave data from a previous run (possible recovery source) and data
> from the current run (may be overwritten).
> 
> I haven't completely thought this through yet, just starting a thread
> for discussion. This is definitely a problem we need to do something
> about.
> 
> -- Chris
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 


References