[grisbi-bugs] [Grisbi 0001601]: Long list of payees take very long time to be displayed

Grisbi Bug Tracker bugtracker at grisbi.org
Sat Sep 28 12:00:59 CEST 2013


The following issue has been ASSIGNED. 
====================================================================== 
http://www.grisbi.org/bugsreports/view.php?id=1601 
====================================================================== 
Reported By:                fpoulain
Assigned To:                pbiava
====================================================================== 
Project:                    Grisbi
Issue ID:                   1601
Category:                   Main
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     assigned
OS:                         Autre(Other) 
Unstable Impact:            Yes 
Version OS:                  
Version GTK:                 
====================================================================== 
Date Submitted:             2013-09-25 22:54 CEST
Last Modified:              2013-09-28 12:00 CEST
====================================================================== 
Summary:                    Long list of payees take very long time to be
displayed
Description: 
I use Grisbi for accounting in the April French NGO. We have a long list of
payees. For a long time, displaying the payees is no longer possible due to the
size of the list (> 8000 payees).

It appears that the main CPU effort for displaying payees is due to the sorting
of the GtkTreeModel in src/metatree.c. Indeed, we can pre-sort the payee list,
at C data (low) level, before filling the GtkTreeModel. It runs 100x faster on
my computer, and allows a total payee sorting to be 10x faster, by avoiding many
expansive comparisons at the GtkTreeModel level.

Here is two patches. The first one introduces a pre-sorting feature. The second
one shows some timings. Feel free to test with and without.

I don't have a test-suite. All what I know is that on my .gsb file, there is
more than 8000 payees, and displaying payees take more than 1 minute.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2013-09-25 22:54 fpoulain       New Issue                                    
2013-09-25 22:54 fpoulain       File Added: sort_payee_list.diff                
   
2013-09-25 22:55 fpoulain       File Added: add_timings.diff                    
2013-09-28 12:00 pbiava         Assigned To               => pbiava          
2013-09-28 12:00 pbiava         Status                   new => assigned     
======================================================================



More information about the bugsreports mailing list