Jump to content


Photo

Undo Button


  • Please log in to reply
8 replies to this topic

#1 Clive Lawford

Clive Lawford

    New Member

  • Members
  • Pip
  • 4 posts

Posted 04 April 2018 - 05:03 AM

Just starting out with trying out this program which is normally the best way to learn a new program but I really miss an undo button. I have already ruined a couple of trees and just had to start all over again, as I don't have the knowledge yet to fix them. One click on a undo button would have rescued them and I am now worried about making just basic mistakes. 



#2 Renee Zamora

Renee Zamora

    Advanced Member

  • Support
  • PipPipPip
  • 8493 posts

Posted 04 April 2018 - 07:39 AM

An undo button is on the enhancement request list. For an undo button we would have to give up automatic save. Which means if the power goes out in the middle of work you lose everything since the last save. Not so appealing. 

 

What you can do instead is save a backup of the database while working. Then you can File>Restore the backup when you want to revert back to the earlier version. I add a letter after the date so I don't overwrite my earlier backups on the same day. 


Renee
RootsMagic

#3 Jerry Bryan

Jerry Bryan

    Advanced Member

  • Members
  • PipPipPip
  • 3611 posts

Posted 04 April 2018 - 08:40 AM

For an undo button we would have to give up automatic save.

 

Not necessarily. The program could keep a transaction log of the last few transactions with copies of the database rows before and after the transactions that were saved in the log. It wouldn't be very easy programming, but I think it would be doable.

 

Jerry



#4 Vyger

Vyger

    Advanced Member

  • Members
  • PipPipPip
  • 3435 posts

Posted 21 January 2019 - 08:47 AM

 

Not necessarily. The program could keep a transaction log of the last few transactions with copies of the database rows before and after the transactions that were saved in the log. It wouldn't be very easy programming, but I think it would be doable.

 

Jerry

 

Competitor software and a very wished for item.

 

undo.png


Customers should never be frustrated by things they cannot do.

 

User of Family Historian 6.2.7, Rootsmagic 7.6.2, Family Tree Maker 2014 & Legacy 7.5

 

Excel to Gedcom conversion - simple getting started tutorials here

 

Root


#5 bdunn

bdunn

    Advanced Member

  • Members
  • PipPipPip
  • 42 posts

Posted 26 January 2019 - 10:41 AM

Another option might be to have a configurable on/off switch for automatic saving or saving every X duration of time. I think the ability to have an undo (and frequency of needing to have it) would be more common than a loss of power.

 

As Jerry mentioned, transactional logging that isn't flushed every change would also work, and I don't think that's very uncommon in SQL. Consider it like a buffer. Yes, if the power failed or the system crashed, you might lose just the most recent changes, but they could be read from the transaction log and recovered quite easily. Each change is just a series of SQL queries anyway.

 

I hope that makes sense.



#6 Jerry Bryan

Jerry Bryan

    Advanced Member

  • Members
  • PipPipPip
  • 3611 posts

Posted 26 January 2019 - 11:51 AM

Data center class SQL systems typically do have a transaction log. As far as I know, SQLite does not. I think about the best you could do to be able to back out RM transactions might be every n minutes to do an automatic backup or to do an automatic copy. The automatic backup or copy would have to be silent, not pestering you with any kind of pop-up menu. Curiously, I think an automatic copy might be faster than an automatic backup, even though a backup file is smaller than an RM database. That's because a backup has to go through a compression process (zipping). In any case, I would think you would want any such automatic backup or copy to go to a different folder from your RM database and your RM backup files.

 

Even though SQLite is not "data center class", my sense is that it is an extremely robust and reliable system for its intended purpose - which is single user applications. As part of its design, it has the characteristic that any update transaction succeeds completely or else doesn't change the database at all. There really shouldn't be any buffered and unflushed transactions. In other words, it's designed never to do a partial update. I do wonder sometimes what happens when multi-threaded applications such as RM might be accessing the database from multiple threads at the same time. I'm don't know what all of RM's multiple threads do, but for sure the WebHints process runs as background threads.

 

Jerry

 



#7 Vyger

Vyger

    Advanced Member

  • Members
  • PipPipPip
  • 3435 posts

Posted 26 January 2019 - 01:31 PM

These are the default General Preferences from another genealogy program;

 

undolevel.png


Customers should never be frustrated by things they cannot do.

 

User of Family Historian 6.2.7, Rootsmagic 7.6.2, Family Tree Maker 2014 & Legacy 7.5

 

Excel to Gedcom conversion - simple getting started tutorials here

 

Root


#8 bdunn

bdunn

    Advanced Member

  • Members
  • PipPipPip
  • 42 posts

Posted 27 January 2019 - 12:31 PM

There is Microsoft SQL Express which is free and is transactional. Also, I believe MySQL and MariaDB (MySQL clone) would both work and they are very good and free.

 

Sorry I'm not that familiar with SQLite... yet. If RM8 is still using SQLite I'm sure I will become more familiar with it. :-)



#9 TomH

TomH

    Advanced Member

  • Members
  • PipPipPip
  • 6268 posts

Posted 27 January 2019 - 07:04 PM

RM8 is being built on SQLite.

Tom user of RM7550 FTM2017 Ancestry.ca FamilySearch.org FindMyPast.com
SQLite_Tools_For_Roots_Magic_in_PR_Celti wiki, exploiting the database in special ways >>> RMtrix-tiny.png app, a bundle of RootsMagic utilities.