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.gnuc...@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.gnuc...@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@gnucash.org > > > > > https://lists.gnucash.org/mailman/listinfo/gnucash-devel > > _______________________________________________ > gnucash-devel mailing list > gnucash-devel@gnucash.org > https://lists.gnucash.org/mailman/listinfo/gnucash-devel _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel