gnucash stable: Multiple changes pushed
John Ralls
jralls at code.gnucash.org
Thu Aug 10 17:06:45 EDT 2023
Updated via https://github.com/Gnucash/gnucash/commit/73dec63d (commit)
via https://github.com/Gnucash/gnucash/commit/5781f344 (commit)
from https://github.com/Gnucash/gnucash/commit/beec4204 (commit)
commit 73dec63d1d63cccd1423c21c39626c4a4e5cc90d
Author: John Ralls <jralls at ceridwen.us>
Date: Thu Aug 10 13:53:21 2023 -0700
Eliminate a frequent exception in guid_from_string
By not trying to construct a GUID from an empty string.
commit 5781f3445bd8e10c27ba173f259d9b72d0aef299
Author: John Ralls <jralls at ceridwen.us>
Date: Thu Aug 10 13:36:39 2023 -0700
SQLBackend: Use std::optional return value instead of exceptions
For wrong value type when retrieving a value from the SQL results row.
Profiling showed that most of the SQL load time was spent in handling
these exceptions, and using std::optional instead produced a > 11x
speedup (10 seconds vs. 115 seconds) when loading a large file.
Summary of changes:
libgnucash/backend/dbi/gnc-dbisqlresult.cpp | 45 +++---
libgnucash/backend/dbi/gnc-dbisqlresult.hpp | 12 +-
libgnucash/backend/sql/gnc-address-sql.cpp | 15 +-
libgnucash/backend/sql/gnc-owner-sql.cpp | 6 +-
libgnucash/backend/sql/gnc-slots-sql.cpp | 17 +-
libgnucash/backend/sql/gnc-sql-backend.cpp | 5 +-
.../backend/sql/gnc-sql-column-table-entry.cpp | 174 +++++++++------------
.../backend/sql/gnc-sql-column-table-entry.hpp | 54 ++++---
libgnucash/backend/sql/gnc-sql-result.hpp | 21 +--
libgnucash/backend/sql/gnc-transaction-sql.cpp | 38 ++---
.../backend/sql/test/utest-gnc-backend-sql.cpp | 10 +-
libgnucash/engine/guid.cpp | 3 +-
12 files changed, 183 insertions(+), 217 deletions(-)
More information about the gnucash-patches
mailing list