Feature #10787

Audit 'init' task schedulers

Added by Boone Gorges 7 months ago. Updated 7 months ago.

Priority name:
Category name:
Target version:
Start date:
Due date:
% Done:


Estimated time:


A handful of tools in our system check and create scheduled tasks on init. Because we're running Cavalcade, this means a database hit (Cavalcade's cache group is nonpersistent).

In some cases, these jobs are things that don't need to be run, or shouldn't be run, at all. The wp_schedule_event() calls should be blocked in this case.

In other cases, it's very unnecessary to check on every single page load. The primary example here is wp_schedule_delete_old_privacy_export_files(). Perhaps we could throttle it to run only once every couple of minutes, or something like that.

There are likely other instances.


#2 Updated by Boone Gorges 7 months ago

  • Status changed from New to Resolved
  • Target version changed from 1.15 to 1.14.3

I've done a quick scan of other parts of the Commons. The primary offender elsewhere is Jetpack's sync module, which checks for its own scheduled tasks on init. The way that the initializer is written makes it quite difficult to unhook this part of the process selectively (to do so would also unregister Jetpack's cron schedules, for example). Since this only affects secondary sites, I'm going to call this ticket good enough and move it back into an earlier milestone.

Also available in: Atom PDF