After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 571449 - inherited attributes patch ...
inherited attributes patch ...
Status: RESOLVED INCOMPLETE
Product: GConf
Classification: Deprecated
Component: Markup backend
CVS HEAD
Other Linux
: High critical
: ---
Assigned To: GConf Maintainers
GConf Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-02-12 12:56 UTC by Michael Meeks
Modified: 2010-01-11 11:52 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (17.64 KB, patch)
2009-02-12 12:59 UTC, Michael Meeks
none Details | Review

Description Michael Meeks 2009-02-12 12:56:48 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 ].
Comment 1 Michael Meeks 2009-02-12 12:59:33 UTC
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.
Comment 2 Michael Meeks 2009-02-12 17:49:08 UTC
which, incidentally is missing an || verbose != NULL in set_verbose_schema_name ...
Comment 3 Federico Mena Quintero 2010-01-08 18:51:48 UTC
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?).
Comment 4 Michael Meeks 2010-01-11 11:52:31 UTC
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.