[GNC-dev] Deprecation of XML file

Mike Evans mikee at saxicola.co.uk
Mon Sep 14 15:51:11 EDT 2020

> The *main* benefit of SQL storage is that you get immediate saves.  I.e.,
> when you commit a transaction, it gets saved to storage immediately.  So
> -- no lost work.

This is exactly why I *don't* use a database for storage. I often screw up entering data.  I don't save until I'm happy I've done it right.  With XML I can just reload the file and try again.  With a database I'd have to restore the last backup, probably yesterday's, then restart GnuCash and try again losing *everything* I did today. (Yes I could manually do a backup of the sqlite file after each transaction but...).  With XML I can enter a transaction, check that I've not screwed up, save the file, then move on to the next transaction, check it and save.  This way If I screw up I can simply reload the XML from however many minutes ago I last saved and continue.

The no-lost-work maybe fine for some|many but not for me.  The only immediate advantage of a DB backend is (as far as I can see) is concurrent user access, which GnuCash doesn't do, yet, so until then I will be using the XML file storage.  Yes, extracting data with other external programs is easier with SQL and If I want to do that I can.  I've never had the need to do so though as the reporting features of GnuCash gives me all the data I need.

PGP Key fingerprint = DA68 9657 0FF3 EFCB 58BD  3349 982E 6790 44C1 29D0

Use saxicola at protonmail.com for end to end encrypted communication.

More information about the gnucash-devel mailing list