Skip to content

Function update_status() - the page callback for the update report - does not scale well with many modules installed #6861

Open
backdrop/backdrop
#5027
@indigoxela

Description

@indigoxela

Description of the bug

While digging for something else I came across the problem, that the page /admin/reports/updates attempts to fire an update check whenever visited.

This is fine, if the update check via cron runs successfully and regularly, and there aren't many modules.

However, this is a problematic approach, if there's already a problem getting update info - whatever the reason is. Trying to visit that page takes as long as it takes until the timeout is reached for checking updates.
The approach is also problematic if automatic checks on cron run are disabled, as then the page call always triggers a full refresh.

Steps To Reproduce

Steps to reproduce involve either a problem with hosting, or too many modules installed to check all of them at once by a single page call (flushing the update cache makes things worse).

Actual behavior

Try to go to /admin/reports/updates - and wait, and wait, and wait... (also depends a little on the update_timeout setting, which defaults to 30s)

Expected behavior

Ideally the update check would always be quick - but in real life that's not the case, unfortunately.

I'm not sure, what the best solution for that problem would be. Sure, the base problem is to not be able to reliably (and regularly) check for updates. Either because of hosting, or because of module count.

But that problem shouldn't make the page on /admin/reports/updates unusable... I belief. 😉

Additional information

Add any other information that could help, such as:

  • Backdrop CMS version: 1.30.1 and before

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions