Master - saving to xml broken

Geert Janssens geert.gnucash at kobaltwit.be
Fri Dec 2 11:20:13 EST 2016


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


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/dd4b8a104d0f7ad2205407e8bf10fe
> > 
> > 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




More information about the gnucash-devel mailing list