? ? ? Pending

User tests: Successful: Unsuccessful:

avatar mbabker
mbabker
20 Oct 2018

Pull Request for Issue #22700

Summary of Changes

This should make the CSV export a bit more memory efficient by using a database iterator for processing the database results versus trying to load the entire resultset into memory first.

A new method is added to the actionlogs model to fetch the results as a JDatabaseIterator versus an array of stdClass objects with the common code between the two getLogs methods moved into a private function to keep things DRY.

The helper method now checks for any valid iterable, which per the is_iterable() function added to PHP 7.1 is any array or object implementing the core Traversable interface and throws an Exception if a non-iterable is given. The Symfony polyfill package for PHP 7.1 is pulled in to be able to use this function.

Testing Instructions

Try to export the CSV file for action logs data. Should still work on smaller data sets, should work better for larger data sets.

Expected result

CSV file exports

Actual result

Memory issues on larger data sets.

avatar mbabker mbabker - open - 20 Oct 2018
avatar mbabker mbabker - change - 20 Oct 2018
Status New Pending
avatar joomla-cms-bot joomla-cms-bot - change - 20 Oct 2018
Category Repository Administration Language & Strings External Library Composer Change Libraries
avatar zero-24
zero-24 - comment - 23 Oct 2018

Sounds like a good plan to me need to be tested. ?

avatar mbabker
mbabker - comment - 23 Oct 2018

Closing in favor of #22752

avatar mbabker mbabker - change - 23 Oct 2018
Status Pending Closed
Closed_Date 0000-00-00 00:00:00 2018-10-23 19:41:19
Closed_By mbabker
Labels Added: ? ? ?
avatar mbabker mbabker - close - 23 Oct 2018

Add a Comment

Login with GitHub to post a comment