https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23624

            Bug ID: 23624
           Summary: Count rows in report without (potentially) consuming
                    all memory
 Change sponsored?: ---
           Product: Koha
           Version: master
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P5 - low
         Component: Reports
          Assignee: koha-bugs@lists.koha-community.org
          Reporter: p...@flo.org
        QA Contact: testo...@bugs.koha-community.org

Created attachment 92841
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=92841&action=edit
Count total number of rows 1,000 at a time

C4::Reports::Guided::nb_rows (called by get_prepped_report in
reports/guided_reports.pl) uses DBI::fetchall_arrayref to retrieve all rows at
once; counts them; and then discards the rows and returns the count.  This has
the potential, if the number of rows is very large, to exhaust all available
memory.

(Other code in guided_reports.pl has the same potential effect, but because the
solution to that is much less straightforward it will be addressed in a
separate bug report.)

This patch uses the second ($max_rows) parameter to DBI::fetchall_arrayref to
retrieve a smaller number (1,000) of rows at a time, looping until all results
have been retrieved.  This will only use as much memory as the maximum amount
used by a single call to DBI::fetchall_arrayref.

-- 
You are receiving this mail because:
You are watching all bug changes.
You are the assignee for the bug.
_______________________________________________
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-bugs
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to