Skip to:
Content

bbPress.org


Ignore:
Timestamp:
11/12/2019 05:28:11 PM (5 years ago)
Author:
johnjamesjacoby
Message:

Tools: reduce the number of calls to bbp_is_large_install().

This commit refactors the update code to only call bbp_is_large_install() once, a function which ironically enough is costly to call on very large installations, so calling it 3 times defeats the purpose, but calling it one time is the minimum requirement to defer upgrades & repairs for keymaster interaction.

See #3052.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/includes/core/update.php

    r6934 r6935  
    339339        /** 2.6 Branch ********************************************************/
    340340
    341         // 2.6 Alpha
    342         if ( $raw_db_version < 261 ) {
     341        // Smaller installs run the upgrades directly
     342        if ( ! bbp_is_large_install() ) {
    343343
    344344            /**
    345345             * Upgrade user favorites and subscriptions
    346              *
    347              * @link https://bbpress.trac.wordpress.org/ticket/2959
    348346             */
    349             if ( ! bbp_is_large_install() ) {
     347            if ( $raw_db_version < 261 ) {
    350348                bbp_admin_upgrade_user_favorites();
    351349                bbp_admin_upgrade_user_topic_subscriptions();
    352350                bbp_admin_upgrade_user_forum_subscriptions();
    353             } else {
     351            }
     352
     353            /**
     354             * Upgrade user engagements
     355             */
     356            if ( $raw_db_version < 262 ) {
     357                bbp_admin_upgrade_user_engagements();
     358            }
     359
     360            /**
     361             * Repair forum hidden reply count
     362             */
     363            if ( $raw_db_version < 263 ) {
     364                bbp_admin_repair_forum_hidden_reply_count();
     365            }
     366
     367        // Large installs require manual intervention
     368        } else {
     369
     370            /**
     371             * Upgrade user favorites and subscriptions
     372             */
     373            if ( $raw_db_version < 261 ) {
    354374                bbp_add_pending_upgrade( 'bbp-user-favorites-move' );
    355375                bbp_add_pending_upgrade( 'bbp-user-topic-subscriptions-move' );
     
    359379                update_option( '_bbp_engagements_strategy', 'user' );
    360380            }
    361         }
    362 
    363         // 2.6 Beta/RC/GM
    364         if ( $raw_db_version < 262 ) {
    365381
    366382            /**
    367383             * Upgrade user engagements
    368              *
    369              * @link https://bbpress.trac.wordpress.org/ticket/3068
    370384             */
    371             if ( ! bbp_is_large_install() ) {
    372                 bbp_admin_upgrade_user_engagements();
    373             } else {
     385            if ( $raw_db_version < 262 ) {
    374386                bbp_add_pending_upgrade( 'bbp-user-topic-engagements-move' );
    375387
    376388                // Set strategy to pre-2.6 on large network
    377389                update_option( '_bbp_engagements_strategy', 'user' );
     390            }
     391
     392            /**
     393             * Upgrade user engagements
     394             */
     395            if ( $raw_db_version < 263 ) {
     396                bbp_add_pending_upgrade( 'bbp-forum-hidden-replies' );
    378397            }
    379398        }
Note: See TracChangeset for help on using the changeset viewer.