SQL backend performance

Christian Stimming stimming at tuhh.de
Wed Feb 24 14:50:14 EST 2010


> So I applied the same treatment to load_splits_for_tx_list,
> substituting g_list_prepend for g_list_append inside the
> split-fetching loop and reversing the list on completion of the loop.
> I rebuilt and tried again and now my data loads in about 9 seconds,
> approximately the same as the xml file and about a factor of 5
> improvement! I haven't tested it yet, but I believe we'll see a nice
> improvement with sqlite3 as well, since this code is not specific to
> either database.

This is extremely good news! Thanks a lot for looking into this and reminding 
anyone here to read the docs of the container types we're using... 

I guess the same (g_list_prepend vs. append) might show up in the XML backend 
as well...

As for the patch and indentation: Indeed we discussed and agreed on some 
common indentation last summer, and we agreed on using the tool astyle to 
reformat the code as decided. See 
http://lists.gnucash.org/pipermail/gnucash-devel/2009-August/026121.html and 
my commit r18675 recently. I didn't apply this to the full source tree so far 
in order not to destroy some people's diffs which are still waiting to be 
applied... I think the directory you're mentioning wasn't run through astyle 
recently, so that would explain this issue.

Regards,

Christian


More information about the gnucash-devel mailing list