gnucash maint: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Sat Jun 2 19:32:44 EDT 2018


Updated	 via  https://github.com/Gnucash/gnucash/commit/3b3074c2 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/f8045b27 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/537fd995 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/9db60ca6 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/3e052e8d (commit)
	 via  https://github.com/Gnucash/gnucash/commit/e23769f0 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/f504e39d (commit)
	 via  https://github.com/Gnucash/gnucash/commit/464fdeeb (commit)
	from  https://github.com/Gnucash/gnucash/commit/74cbde2d (commit)



commit 3b3074c28d39ab5cfae93261978cad17ed3dc73e
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 2 16:21:49 2018 -0700

    Bug 796117 - Connecting 3.1 to an existing mysql db drops all data
    
    Provide a backup recovery function that instead of dropping primaries
    and restoring backups merges the primaries and backups. This should
    handle a worst-case safe-save failure where the backup tables don't
    have a complete set of rows for some reason.

commit f8045b27355e105e6c4513ac2c3cdeab9f91bb9d
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 2 16:21:05 2018 -0700

    A wee bit of C++ style.

commit 537fd995a3221db3ca5ec785a3247851b5464c40
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 2 16:20:36 2018 -0700

    Ensure full precision of doubles is saved to SQL.
    
    std::iostream's operator<<(double) uses only 6 digits of precision
    by default. We want 12 digits when saving.

commit 9db60ca63c12eca99c6ea893b22617e934b8943b
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Jun 2 16:16:41 2018 -0700

    Make float database operations more consistent.
    
    We don't use floats in GnuCash, we use doubles (and those as little as
    possible), but dbd-sqlite3 is broken in that it stores only floats.
    Simply casting floats to doubles introduces bogus additional digits
    that can cause round-trip tests to fail. Instead convert floats to
    doubles by multiplying by 10E6, rounding, then dividing by 10E6.

commit 3e052e8dac87b8b38af73bf68e5cdd03c56930f2
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Jun 1 14:12:56 2018 -0700

    [DBI Backend] Rework backup-table management.
    
    Removes a public function, GncDbiSqlConnection::table_manage_backup that
    should have been private in the first place.
    
    Better encapsulates table renames and drops with private functions and
    handles cases where there exist some primary tables and some backup tables.

commit e23769f078041ac9be787f85aa83723c15c18045
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Jun 1 14:02:29 2018 -0700

    [DBI Backend] If there's a set error value use that to set the backend error.

commit f504e39d7818f0f8e74b00aeb838366540afd931
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Jun 1 14:00:52 2018 -0700

    Correct the type of error variables.
    
    C++ doesn't like interchanging enums and ints.

commit 464fdeeb262ae5153b19e7b884790f5cb210c7aa
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Jun 1 13:59:06 2018 -0700

    [DBI Backend] Remove unused TableOpTypes.



Summary of changes:
 libgnucash/backend/dbi/gnc-backend-dbi.hpp         |  10 +-
 libgnucash/backend/dbi/gnc-dbisqlconnection.cpp    | 187 ++++++++++++---------
 libgnucash/backend/dbi/gnc-dbisqlconnection.hpp    |  10 +-
 libgnucash/backend/dbi/gnc-dbisqlresult.cpp        |   6 +-
 libgnucash/backend/dbi/gnc-dbisqlresult.hpp        |   2 +-
 libgnucash/backend/sql/gnc-slots-sql.cpp           |   6 +-
 .../backend/sql/gnc-sql-column-table-entry.cpp     |   2 +-
 .../backend/sql/gnc-sql-column-table-entry.hpp     |  31 ++++
 libgnucash/backend/sql/gnc-sql-connection.hpp      |   3 +-
 libgnucash/backend/sql/gnc-sql-result.hpp          |   4 +-
 .../backend/sql/test/utest-gnc-backend-sql.cpp     |   4 +-
 11 files changed, 166 insertions(+), 99 deletions(-)



More information about the gnucash-patches mailing list