2.3.4 xml files cannot be opened by 2.2.x anymore (?) (Re: Db structure)

Christian Stimming stimming at tuhh.de
Fri Aug 21 04:42:12 EDT 2009

This seems to be the unfortunate fall-out of what has been discussed  
http://lists.gnucash.org/pipermail/gnucash-devel/2009-August/025964.html and  
implemented in r18246. The change was: "Store account "hidden" and  
"placeholder" flags as booleans in the account record and with new  
<hidden> and <placeholder> tags in the XML file. "

As an unfortunate side-effect, the 2.2.x xml parser barfs on the newly  
introduced xml tags and refuses to load an xml file saved with  
gnucash-trunk r18246 or newer, which includes the just released  
gnucash-2.3.4 version.

> Phil Longstaff <plongstaff at rogers.com> writes:
>> This leads to potential backwards compatibility problems in the xml  
>> file format.  However, as long as 2.4 can read 2.2 XML files, do we  
>> need to keep backwards compatibility so that 2.2 can read 2.4 files?
> Historically we have made non-compatible changes to the data file.  For
> example we did the SX incompatibilities in 2.something.  Ideally
> we plan for these changes so that you can make x.y.<late> be able
> to read the files from x.y+2 -- but that doesn't always work out.

Unfortunately the problem is not only silent data loss (which you have  
avoided by duplicating the information into the old slots as well) but  
additionally the picky implementation of the XML parser in the 2.2.x  
series, which gets very confused when encountering new tags.

The use case for loading a 2.3 or 2.4 file into 2.2 again is rather  
common: Someone runs the new version for testing and in order to do  
thorough testing he uses his live data, but then for whatever reason  
doesn't like the current state of the new version and prefers to  
continue his daily work in the previous version.

Does anyone see the same issues? How are we going to deal with this?



More information about the gnucash-devel mailing list