gnucash stable: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Sat Jun 21 19:44:20 EDT 2025


Updated	 via  https://github.com/Gnucash/gnucash/commit/db883f97 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/c1eb5a69 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/60bc4cca (commit)
	from  https://github.com/Gnucash/gnucash/commit/b0c60fb3 (commit)



commit db883f972b022da16b107f27ae98f23a9011e084
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 21 16:38:42 2025 -0700

    Bug 799623 - test-backend-dbi fails after 2038
    
    The first-line cause of the bug was that the safe save was failing on
    SQLite3 because the backup tables weren't visible inside the
    transaction and that prevented them from being dropped. Commit the
    transaction before trying to drop the backup tables.

commit c1eb5a69803388ebd5500782904474a8e94f139c
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 21 16:29:53 2025 -0700

    [DBI Backend] Preserve int size when recovering from failed save-save.
    
    Delete all rows and copy merged rows back into program-created table
    instead of renaming the merge table. See
    https://bugs.gnucash.org/show_bug.cgi?id=799623#c6 for explanation.

commit 60bc4ccab01e4101eb9389aca8f57d85e696c96d
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 21 16:33:51 2025 -0700

    [test-dbi-backend] Test 64-bit integer insertion explicitly.
    
    https://bugs.gnucash.org/show_bug.cgi?id=799623 identified a problem
    with int64_t storage in SQLite3 by setting a date after 2038-01-23
    whose time64 overflowed int32_t. But dates shouldn't be stored as
    time64s, they should be stored as ISO 8601 date-time strings. So fix
    the test to store the date correctly and to store the big int as an
    int64_t.



Summary of changes:
 libgnucash/backend/dbi/gnc-backend-dbi.cpp             |  2 +-
 libgnucash/backend/dbi/gnc-dbisqlconnection.cpp        | 11 +++++++++--
 libgnucash/backend/dbi/test/test-backend-dbi-basic.cpp |  7 +++++--
 3 files changed, 15 insertions(+), 5 deletions(-)



More information about the gnucash-patches mailing list