File loading significantly slowed down in r13460
Chris Shoemaker
c.shoemaker at cox.net
Sun Mar 5 18:20:20 EST 2006
On Sun, Mar 05, 2006 at 02:39:26PM +0100, Christian Stimming wrote:
> Chris,
>
> as I already wrote in that other msg: The loading of a file has significantly
> slowed down after the most recent commits. I've verified this speed change to
> be introduced in the -r 13458:13460 change (13459 doesn't compile), although
> both versions don't completely compile due some symbol changes. But in 13458
> everything is as before, and in 13460 file loading is slower by a factor of
> two.
>
> That isn't an immediate error, but it's annoying nevertheless, because somehow
> we got along faster than we do now.
>
> Should I track this down in more detail, like obtaining a function list of
> cachegrind? Or is it already obvious for you where the problem might be?
Oh, I have a pretty good idea what this is all about. I don't seem to
have any noticable time difference in my tests, but I knew there would
be a cost when I wrote it, and I marked it FIXME. From
xaccSplitCommitEdit():
mark_acc(acc);
//FIXME: should really be in xaccAccountCommitEdit
xaccAccountSortSplits (acc, TRUE);
xaccAccountRecomputeBalance(acc);
This is forcing a resort of the splits after every
xaccTransCommitEdit. That's really incorrect, but let me just make
sure that resorts are happening in all the right places before I
remove that.
-chris
More information about the gnucash-devel
mailing list