GNOME Bugzilla – Bug 621075
Extend current transaction logging to full activity logging
Last modified: 2018-06-29 22:40:35 UTC
Currently, GnuCash provides simple transaction logging. This means that each transaction manipulation (creation, modification, removal) is logged in a special log file. Theoretically this file can be used to recover from a crash. This logging is very limited however, which limits its use as a crash recovery system. To be fully usable two major improvements in the log are required. 1. Besides the transaction manipulations, but all manipulations on all objects that GnuCash can store should be logged. For example manipulations of accounts, vendors/customers/employees, bills/invoices/vouchers, tax tables, billing terms,... Skipping any of those may lead to inconsistent recovery: how can you recover missing transactions if the account is not recovered as well ? 2. The current transaction log doesn't record all transaction data. Information in kvp's is ignored. This means some information is inherently lost on recovery. Note: I'm not sure at all whether this work worth the effort. Logging is there to deal with data loss in case of a crash. This can only happen if there is unsaved data at the time of a crash. The new backends (sqlite3/mysql/postgres) all save realtime and atomically. So if GnuCash crashes on while one of these backens is in use, at most the last manipulation is lost. So this logging only really makes sense for the xml backend, which will slowly but surely be replaced by the sqlite3 backend. I created this enhancement request mostly to clarify the state of the logging interface. There are other bug reports in this area (which I'll close as duplicates of this one), but they only highlight particular sub-aspects of the problem.
GnuCash bug tracking has moved to a new Bugzilla host. The new URL for this bug is https://bugs.gnucash.org/show_bug.cgi?id=621075. Please continue processing the bug there and please update any external references or bookmarks.