GNOME Bugzilla – Bug 571449
inherited attributes patch ...
Last modified: 2010-01-11 11:52:31 UTC
So ... this adds the ability to inherit attributes from a parent node for 'mtime' (though no unit tests for that yet), revives the unit testing code, and adds schema path compression. In theory this should result in a nice parsing / CPU cycle win: less XML == less to parse, and is faster ;-) In reality it saves us perhaps only a few percent. I suspect this is due to the last really big silly being the remaining l10n cruft in %gconf-tree.xml. Anyhow - comments on the updated schema much appreciated; I'm running with this and it appears to work well [ though the mtimes look a little odd in /etc ].
Created attachment 128552 [details] [review] patch Oh - other things; I only use the new format in the system ie. /etc/... directory to help portability - I think we should get wilder with changing the format there personally :-) The schema compression [ the compress / de-compress code is ~never called in real use ], should save a chunk of heap in the daemon too - not measured that. I didn't update the DTD etc. good luck there.
which, incidentally is missing an || verbose != NULL in set_verbose_schema_name ...
I've rebased this for gconf 2.28.0. Your patch is in the moblin-speed-inherit-bgo571449 branch in git.gnome.org. So, is this patch fit for inclusion in the baseline gconf source? Or does it assume moblin-isms in the configuration (what's with the /etc changes?).
Well - I guess it's not horrible to get up-stream. I guess the fact that this is turned on only for the system data, and not the user's home directory / settings makes it tolerable - even though it change & updates the XML schema, in a non-backwards-compatible way. Unfortunately, it seems changing the schema is the only easy option to make it more compact and save this memory while reducing parsing time - that doesn't involve a completely new backend format. So - I don't see a big problem merging it.