GnuCash 2.3.1 fails silently to open gnucash database

Geert Janssens janssens-geert at telenet.be
Tue Apr 20 03:49:18 EDT 2010


On Tuesday 20 April 2010, Robert Fleming wrote:
> > > I seem to be having the same problem as described here
> > > <
> > > http://web.archiveorange.com/archive/v/4bd7mgyyFWlNWzq5FwB0>
> > > and <
> > > http://svn.gnucash.org/logs/2007/01/2007-01-28.html>.
> > >
> > > When I tell GnuCash to open my PostgreSQL database, I can
> > > see that it's
> > > working to fetch the data, but then the main GnuCash window
> > > comes up empty,
> > > with only the "Save" and "Close" buttons on the toolbar, a
> > > blank space below
> > > it, BUT with the correct "URL" of my database appearing in
> > > the title bar.
> > >
> > > This is what I see in my /tmp/gnucash.trace:
> > > * 12:08:06  WARN <gnc.gui> error reading group
> > > Window 1 key PageCount: Key
> > > file does not have group 'Window 1'
> > >
> > > I've attached the full gnucash.trace form when I run
> > > GnuCash with "--debug".
> > >
> > > Nothing gets printed on the console from which GnuCash was
> > > started.
> > >
> > > I've tried renaming my "~/.gnucash" directory so that
> > > GnuCash would create a
> > > new one, but it didn't help.
> > >
This is a bug in GnuCash. It has been in the development tree for quite some 
time, but it only surfaced recently.

The bug gets triggered for books stored in a true database, when updating 
GnuCash from pre-2.3.11 to 2.3.11.

Here's why:
- GnuCash saves a state file for each book in ~/.gnucash/books (or equivalent 
on other platforms). This file contains information on which windows/tabs were 
open and window sizes.
- The name of each state file is based on the data storage. For file backed 
books, the state file simply uses the book's file name. For db backed books 
the state file uses the database parameters to create a file name.
- As of 2.3.11, the algorithm for the state file's filename in case of db 
backed books changed for security reasons (remove the plain text password from 
the name)
- Because of this, the first time an existing db is opened again with 2.3.11, 
no state file is found.
- In such case, GnuCash should normally recreate the default state, which is 
one window with the accounts page in it.
- And that last part is exactly what had a bug (see 
https://bugzilla.gnome.org/show_bug.cgi?id=613963)

That bug has been fixed and the upcoming 2.3.12 release will properly show a 
default state again.

As seen in the bug report, there is an easy workaround in 2.3.11: when it 
opens in an empty window, you can display the accounts page with 
View -> New Accounts Page

Geert


More information about the gnucash-user mailing list