[GNC] V3.3 on Ubuntu 18.10 can't Save As over existing mysql database

Colin Law clanlaw at gmail.com
Sat Oct 13 05:18:29 EDT 2018


 I have enabled the query log in mysql and when I attempt to save I first
see
2018-10-13T09:05:13.241000Z        5 Connect    root at localhost on gnucash
using Socket
2018-10-13T09:05:13.241249Z        5 Query    SET NAMES 'utf8'
2018-10-13T09:05:13.241428Z        5 Query    SELECT @@sql_mode
2018-10-13T09:05:13.241746Z        5 Query    SET
sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
2018-10-13T09:05:13.241903Z        5 Query    CREATE TEMPORARY TABLE
numtest ( test_int BIGINT, test_unsigned BIGINT, test_double FLOAT8 )
2018-10-13T09:05:13.242534Z        5 Query    INSERT INTO numtest VALUES
(-9223372036854775807, 9223372036854775807, 1.79769213486e+307)
2018-10-13T09:05:13.242779Z        5 Query    SELECT * FROM numtest
2018-10-13T09:05:13.243032Z        5 Query    DROP TABLE numtest
2018-10-13T09:05:13.243496Z        5 Query    SHOW TABLES FROM `gnucash`
2018-10-13T09:05:13.243955Z        5 Quit

Then it shows the db already exists warning.  When I tell it to go ahead I
see
2018-10-13T09:05:29.411367Z        6 Connect    root at localhost on gnucash
using Socket
2018-10-13T09:05:29.411622Z        6 Query    SET NAMES 'utf8'
2018-10-13T09:05:29.411817Z        6 Query    SELECT @@sql_mode
2018-10-13T09:05:29.412095Z        6 Query    SET
sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
2018-10-13T09:05:29.412250Z        6 Query    CREATE TEMPORARY TABLE
numtest ( test_int BIGINT, test_unsigned BIGINT, test_double FLOAT8 )
2018-10-13T09:05:29.413159Z        6 Query    INSERT INTO numtest VALUES
(-9223372036854775807, 9223372036854775807, 1.79769213486e+307)
2018-10-13T09:05:29.413459Z        6 Query    SELECT * FROM numtest
2018-10-13T09:05:29.413756Z        6 Query    DROP TABLE numtest
2018-10-13T09:05:29.414040Z        6 Query    SHOW TABLES FROM `gnucash`
2018-10-13T09:05:29.414333Z        6 Init DB    mysql
2018-10-13T09:05:29.414405Z        6 Query    DROP DATABASE `gnucash`
2018-10-13T09:05:33.727523Z        7 Connect    root at localhost on gnucash
using Socket

and nothing else.  There is a few seconds gap after the drop database
before the Connect line and the error message on screen.

Colin



On Fri, 12 Oct 2018 at 17:12, John Ralls <jralls at ceridwen.us> wrote:

> Check your MySQL logs and see if it’s raising error 1007 (database exists)
> after the second CREATE DATABASE query. There might be a timing issue where
> MySQL is still cleaning up after the DROP DATABASE when the second create
> query arrives. If so it might be evident from the MySQL logs.
>
> Regards,
> John Ralls
>
>
> > On Oct 12, 2018, at 7:45 AM, Colin Law <clanlaw at gmail.com> wrote:
> >
> > I am using MySQL.  When I attempt to Save As over an existing database
> > I see the database already exists warning then when I tell it to go
> > ahead I get the generic server encountered error or bad or corrupt
> > data message.
> >
> > In gnucash.trace I see
> > * 15:40:07  WARN <gnc.backend.dbi>
> > [GncDbiBackend<Type>::session_begin()] Databse already exists, Might
> > clobber it.
> > * 15:41:37  CRIT <gnc.backend.dbi>
> > [GncDbiBackend<Type>::session_begin()] Unable to create database
> > 'gnucash'
> >
> > If I then look in mysql I see that the database has been dropped, and
> > if I try to Save As again it creates the database correctly.  So it
> > appears the drop database is working but then it is unable to create
> > the new one for some reason after dropping, but is able to create it
> > if it does not need to drop it.
> > On Fri, 12 Oct 2018 at 15:29, John Ralls <jralls at ceridwen.us> wrote:
> >>
> >>
> >>
> >> On Oct 12, 2018, at 6:03 AM, Colin Law <clanlaw at gmail.com> wrote:
> >>
> >> I believe that on early 3.x versions that it was not possible to Save
> >> As on top of an existing database of the same name.  I thought that
> >> had been fixed in or before 3.3 but I note that it still fails using
> >> 3.3 from the Ubuntu 18.10 repository.  Also I cannot find a bug
> >> referring to the problem.
> >>
> >> Can someone elucidate?
> >>
> >>
> >> Colin,
> >>
> >> The bugs were https://bugs.gnucash.org/show_bug.cgi?id=796724 for
> MySQL/MariaDB and https://bugs.gnucash.org/show_bug.cgi?id=789594 for
> SQLite3.
> >>
> >> What DB Engine are you using and do you get an error or is it just
> refusing to drop the existing DB?
> >>
> >> Regards,
> >> John Ralls
> >>
>
>


More information about the gnucash-user mailing list