Term Splitting: Switch to a faster cron unschedule process to benefit sites with thousands of affected jobs. Fix the cron hook name in the failsafe rescheduler.

Props Otto42, dd32, peterwilsoncc
See #33423

Built from https://develop.svn.wordpress.org/trunk@33727


git-svn-id: http://core.svn.wordpress.org/trunk@33695 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Dion Hulse 2015-08-25 04:32:21 +00:00
parent 0401ee6007
commit 4f8ce1c232
3 changed files with 6 additions and 9 deletions

View File

@ -1590,11 +1590,8 @@ function upgrade_431() {
// Fix incorrect cron entries for term splitting
$cron_array = _get_cron_array();
if ( isset( $cron_array['wp_batch_split_terms'] ) ) {
foreach ( $cron_array['wp_batch_split_terms'] as $timestamp_hook => $cron_data ) {
foreach ( $cron_data as $key => $args ) {
wp_unschedule_event( 'wp_batch_split_terms', $timestamp_hook, $args['args'] );
}
}
unset( $cron_array['wp_batch_split_terms'] );
_set_cron_array( $cron_array );
}
}

View File

@ -4441,15 +4441,15 @@ function _wp_batch_split_terms() {
}
/**
* In order to avoid the wp_batch_split_terms() job being accidentally removed,
* In order to avoid the _wp_batch_split_terms() job being accidentally removed,
* check that it's still scheduled while we haven't finished splitting terms.
*
* @ignore
* @since 4.3.0
*/
function _wp_check_for_scheduled_split_terms() {
if ( ! get_option( 'finished_splitting_shared_terms' ) && ! wp_next_scheduled( 'wp_batch_split_terms' ) ) {
wp_schedule_single_event( time() + MINUTE_IN_SECONDS, 'wp_batch_split_terms' );
if ( ! get_option( 'finished_splitting_shared_terms' ) && ! wp_next_scheduled( 'wp_split_shared_term_batch' ) ) {
wp_schedule_single_event( time() + MINUTE_IN_SECONDS, 'wp_split_shared_term_batch' );
}
}

View File

@ -4,7 +4,7 @@
*
* @global string $wp_version
*/
$wp_version = '4.4-alpha-33726';
$wp_version = '4.4-alpha-33727';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.