diff --git a/wp-admin/includes/upgrade.php b/wp-admin/includes/upgrade.php index 77487ba2cb..8cc106f45d 100644 --- a/wp-admin/includes/upgrade.php +++ b/wp-admin/includes/upgrade.php @@ -2174,9 +2174,6 @@ function upgrade_550() { global $wp_current_db_version; if ( $wp_current_db_version < 48121 ) { - update_option( 'finished_updating_comment_type', 0 ); - wp_schedule_single_event( time() + ( 1 * MINUTE_IN_SECONDS ), 'wp_update_comment_type_batch' ); - $comment_previously_approved = get_option( 'comment_whitelist', '' ); update_option( 'comment_previously_approved', $comment_previously_approved ); delete_option( 'comment_whitelist' ); @@ -2198,6 +2195,11 @@ function upgrade_550() { delete_option( 'blacklist_keys' ); delete_option( 'blocklist_keys' ); } + + if ( $wp_current_db_version < 48748 ) { + update_option( 'finished_updating_comment_type', 0 ); + wp_schedule_single_event( time() + ( 1 * MINUTE_IN_SECONDS ), 'wp_update_comment_type_batch' ); + } } /** diff --git a/wp-includes/comment.php b/wp-includes/comment.php index efcf384815..47e74bc3f2 100644 --- a/wp-includes/comment.php +++ b/wp-includes/comment.php @@ -3839,11 +3839,11 @@ function _wp_batch_update_comment_type() { */ $comment_batch_size = (int) apply_filters( 'wp_update_comment_type_batch_size', 100 ); - // Update the `comment_type` field value to be `comment` for the next batch of comments. - $wpdb->query( + // Get the IDs of the comments to update. + $comment_ids = $wpdb->get_col( $wpdb->prepare( - "UPDATE {$wpdb->comments} - SET comment_type = 'comment' + "SELECT comment_ID + FROM {$wpdb->comments} WHERE comment_type = '' ORDER BY comment_ID DESC LIMIT %d", @@ -3851,6 +3851,21 @@ function _wp_batch_update_comment_type() { ) ); + if ( $comment_ids ) { + $comment_id_list = implode( ',', $comment_ids ); + + // Update the `comment_type` field value to be `comment` for the next batch of comments. + $wpdb->query( + "UPDATE {$wpdb->comments} + SET comment_type = 'comment' + WHERE comment_type = '' + AND comment_ID IN ({$comment_id_list})" // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared + ); + + // Make sure to clean the comment cache. + clean_comment_cache( $comment_ids ); + } + delete_option( $lock_name ); } diff --git a/wp-includes/version.php b/wp-includes/version.php index 34dbcb320c..13f7231530 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -13,14 +13,14 @@ * * @global string $wp_version */ -$wp_version = '5.5-RC2-48747'; +$wp_version = '5.5-RC2-48752'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * * @global int $wp_db_version */ -$wp_db_version = 48575; +$wp_db_version = 48748; /** * Holds the TinyMCE version.