Master - saving to xml broken

Robert Fewell 14ubobit at gmail.com
Fri Dec 2 12:43:19 EST 2016


OK, I just rebuilt from master and I get exactly the same errors on saving
as you.

Bob

On 2 December 2016 at 16:38, Geert Janssens <geert.gnucash at kobaltwit.be>
wrote:

> Op vrijdag 2 december 2016 17:20:13 CET schreef Geert Janssens:
> > Here's my scenario:
> >
> > - start gnucash
> > - create new file
> > - go through the assistant, simply by clicking forward everywhere
> > - save the file
> > - add one vendor
> > - save the file
> > - restart gnucash
> >
> > => error as described earlier
> >
> > Checking my data file, it does indeed have the vendor stored twice. I'm
> > currently doing a full clean rebuild of gnucash master (freshly checked
> out
> > from github). I'll report my findings when the build finishes.
> >
> > Geert
> >
>
> Ok, clean rebuild of current master. Things are even worse. Same steps as
> above.
>
> After the assistant finishes, I'm offered a save dialog. I'm entering a new
> file name (of a non-existent file). A second dialog window pops up telling
> me
> the file is already open and asks whether I want to save over it. At the
> same
> time this message is printed in the logs:
> * 17:30:49  WARN <gnc.backend> [GncXmlBackend::session_begin()] Might
> clobber,
> no force
>
> I tell gnucash to overwrite and the save dialog closes. The window title is
> changed to *Double.gnucash (I chose "Double" as file name).
> This suggests the file is not saved yet. Looking on the file system it's
> not
> there indeed. But the lock files are.
>
> Closing gnucash it asks me again whether I want to save the file. I'm
> telling
> it to save. Immediately a second dialog pops up warning me the changes of
> the
> last x minutes will be lost if I close without saving.
>
> I chose again to save, the same dialog appears again and will continue to
> do
> so until I choose to close without saving. At that point gnucash segfaults.
>
> There's no file on my file system with the name Double.gnucash.
>
> There is also no other version of gnucash or its libraries on the path.
>
> Regards,
>
> Geert
>
>
> > Op vrijdag 2 december 2016 15:03:03 CET schreef Robert Fewell:
> > > Geert,
> > >
> > > Just created a customer and vendor, still no errors...
> > >
> > > Bob
> > >
> > > On 2 December 2016 at 14:45, Geert Janssens <
> geert.gnucash at kobaltwit.be>
> > >
> > > wrote:
> > > > Bob,
> > > >
> > > > Did you add a business object, like a vendor or customer ?
> > > >
> > > > Geert
> > > >
> > > > Op vrijdag 2 december 2016 14:34:57 CET schreef Robert Fewell:
> > > > > Geert,
> > > > >
> > > > > Not sure I see your problem, just created a new xml file based on
> > > > > master
> > > > > with one transaction from
> > > > > https://github.com/Gnucash/gnucash/commit/
> dd4b8a104d0f7ad2205407e8bf10
> > > > > fe
> > > >
> > > > ec36
> > > >
> > > > > 4c8127, can save with no errors.
> > > > >
> > > > > Bob
> > > > >
> > > > > On 2 December 2016 at 13:03, Geert Janssens
> > > > > <geert.gnucash at kobaltwit.be>
> > > > >
> > > > > wrote:
> > > > > > Op vrijdag 2 december 2016 13:50:12 CET schreef Geert Janssens:
> > > > > > > Hi,
> > > > > > >
> > > > > > > The last couple of days I find that the master branch breaks
> xml
> > > >
> > > > files
> > > >
> > > > > > > during save. I didn't report earlier because I had to check
> first
> > > > > > > whether
> > > > > > > it wasn't due to my own branch.
> > > > > > >
> > > > > > > Built a clean current master today, and it still saves broken
> xml
> > > >
> > > > data
> > > >
> > > > > > > files.
> > > > > > >
> > > > > > > The error message is - as usual with the backend - pretty
> vague:
> > > > > > > * 13:27:04  WARN <gnc.backend> [GncXmlBackend::load()] Syntax
> > > > > > > error
> > > >
> > > > in
> > > >
> > > > > > Xml
> > > > > >
> > > > > > > File /home/janssege/Development/gnucash/testdata/KobaltTest.
> xac
> > > > > > >
> > > > > > > To reproduce: open a working file and save it as xml. For my
> test
> > > > > > > I
> > > > > >
> > > > > > simply
> > > > > >
> > > > > > > added and remove one character of one single transaction
> > > > > > > description
> > > >
> > > > and
> > > >
> > > > > > > then saved the file again.
> > > > > > >
> > > > > > > Analyzing the broken file I find:
> > > > > >
> > > > > > > 1. there are several duplicate xml namespaces in the xmlns
> list:
> > > > > > billterm,
> > > > > >
> > > > > > > bt- days, bt-prox, cust, employee, entry, invoice, job, order,
> > > >
> > > > taxtable,
> > > >
> > > > > > > tte, vendor and addr. They were in the original file as well,
> but
> > > >
> > > > only
> > > >
> > > > > > > once.
> > > > > > >
> > > > > > > 2. gnc:count-data equally has a number of duplicate entries,
> also
> > > > > > > for
> > > > > > > business objects only.
> > > > > > >
> > > > > > > 3. The original book only had gnc:commodity entries for
> currencies
> > > >
> > > > that
> > > >
> > > > > > are
> > > > > >
> > > > > > > really in use. The new book has an entry for each commodity we
> > > >
> > > > support.
> > > >
> > > > > > > 4. all objects that didn't have slots before, now have an empty
> > > > > > > slots
> > > > > > > xml
> > > > > > > entity. The commodities now have for example <cmdty:slots/>.
> > > >
> > > > Similarly
> > > >
> > > > > > there
> > > > > >
> > > > > > > are now also plenty of empty entities for accounts,
> transactions,
> > > > > > > splits,
> > > > > > > ...
> > > > > > >
> > > > > > > This issue must have been introduced before commit
> dd4b8a104d0f7
> > > > > > > on
> > > > > >
> > > > > > master.
> > > > > >
> > > > > > > That's the commit my cpp branch branches off from and I'm
> seeing
> > > > > > > it
> > > > > >
> > > > > > there as
> > > > > >
> > > > > > > well (albeit with a slightly different error message:* 10:54:04
> > > > > > > WARN
> > > > > > > <gnc.backend> [gnc_xml_be_load_from_file()] Syntax error in Xml
> > > > > > > File
> > > > > >
> > > > > > /home/
> > > > > >
> > > > > > > janssege/Development/gnucash/testdata/KobaltTest.xac)
> > > > > >
> > > > > > Digging a bit further it looks like all business data is
> duplicated,
> > > >
> > > > which
> > > >
> > > > > > would explain the errors - all those guid's appear twice.
> > > > > >
> > > > > > Geert
> > > > > > _______________________________________________
> > > > > > gnucash-devel mailing list
> > > > > > gnucash-devel at gnucash.org
> > > > > > https://lists.gnucash.org/mailman/listinfo/gnucash-devel
> >
> > _______________________________________________
> > gnucash-devel mailing list
> > gnucash-devel at gnucash.org
> > https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>
>
>


More information about the gnucash-devel mailing list