@diosmosis opened this issue on July 12th 2015

One user's install appears to become bloated due the INNER JOIN in Piwik\DataAccess\Model::getInvalidatedArchiveIdsSafeToDelete(). The user has more than one hundred thousand invalid archives. On this install, the query never finished (I let it run for an hour before stopping), and for some reason, the scheduled task that purges invalidated archives returns immediately with an empty result set.

The query I've replaced it w/ takes ~.7s to run when there are ~135,000 invalid archives in a single table.

It's possible this may fix #7181, after fixing this in the user's Piwik, the scheduled task started working. Currently waiting for verification.

@mattab commented on July 12th 2015

Very nice! I learnt something new about the Power of GROUP_CONCAT.

Note: this code is covered by System test: ArchivePurgerTest

@mattab commented on July 12th 2015

Great find @diosmosis :+1:

This issue was closed on July 12th 2015
Powered by GitHub Issue Mirror