← Back to team overview

openerp-expert-accounting team mailing list archive

[Bug 514808] Re: account - Legal Statements - General Ledger Performance issue [memory leak?]

 

Hi,

We have the same problem : we are unable to print out this report.

Here are the server details:

Processor : Intel(R) Xeon(R) CPU E31270 @ 3.40GHz
Memory : 16Gb
Swap : 16Gb

OpenERP instance :

account.move : over 13.000 and daily increase
account.move.line : overs 68.000 and daily increase

After more than one hour, the report.account.general.ledger (or report.account.general.ledger_landscape) does not print out. The OpenERP process takes 115% of CPU.
And more important : the overall performances of OpenERP are impaired : the other users are freezed in their work!

-- 
You received this bug notification because you are a member of OpenERP
Accounting Experts, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/514808

Title:
  account - Legal Statements - General Ledger Performance issue [memory
  leak?]

Status in OpenERP Addons (modules):
  Fix Released
Status in Qt/KDE OpenObject Client:
  New

Bug description:
  The General Ledger report generation is too slow, leading to a
  "timeout" on the client side if there are too many records (1000 are
  enough), making it impossible to print the general ledger without
  using 'workarounds' (printjob module), and even then it uses all the
  CPU for too long making the server irresponsible.

  ***

  Times reported by Ferdinand @ ChriCar:

     About 3700 account move lines for 5 years (very small company) it takes
        * 1:40 min to print General Ledger for all 5 years (60 pages 3700 records)
        * 0:30 min to print GL for period 200912 (6 pages, 120 records)

  ***

  Times reported by Borja López Soilán:

     Tested on a Core2Duo 4400@2Ghz with 2GB RAM.
     Created a new demo database (service profile), and then used a script to create 10.000 account moves. 

     It took about 35 minutes to generate the general ledger report (the client did timeout after 3 minutes):
        * 30m of CPU time consumed by Python
        * 1m30s of CPU time consumed by Postgres
                   Number of queries: 282,193  //  Total query duration: 1m30s  // Query peak: 845 queries/s at 2010-02-10 12:04:21

     Notes:
        * Some queries related with the RML translation (formatLang function), may be cached to save up to 30% of the Postgres time. For example, this single query is done 160.000 times, taking 38.9 seconds: "SELECT date_format","direction","code","name","thousands_sep","translatable","time_format","decimal_point","active","grouping",id FROM "res_lang" WHERE id IN (0) ORDER BY id;" (See the attached pgFouine file, for a detailed report of the queries performed by OpenERP while generating the general ledger)
        * 10.000 account moves take 30m, so everything with more than 1000 account moves would give a timeout on the client side.

To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/514808/+subscriptions


Follow ups