From 5dcb2e928c8e9643c5a5c919f0b63df7bb17c5e3 Mon Sep 17 00:00:00 2001 From: Sergey Biryukov Date: Tue, 30 May 2023 14:32:25 +0000 Subject: [PATCH] Upgrade/Install: Avoid an extra database query in `populate_network()`. This moves the query for user ID of the new network's administrator closer to where the value is actually used. Includes removing unnecessary `get_userdata()` call, as user ID is the only data needed here. Follow-up to [12756], [35575], [43628]. Props nihar007, sakibmd, mukesh27, costdev, SergeyBiryukov. Fixes #58423. git-svn-id: https://develop.svn.wordpress.org/trunk@55869 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-admin/includes/schema.php | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/src/wp-admin/includes/schema.php b/src/wp-admin/includes/schema.php index ceb1011462..8cb50fe971 100644 --- a/src/wp-admin/includes/schema.php +++ b/src/wp-admin/includes/schema.php @@ -1044,18 +1044,6 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam ) ); - $site_user = get_userdata( - (int) $wpdb->get_var( - $wpdb->prepare( - "SELECT meta_value - FROM $wpdb->sitemeta - WHERE meta_key = %s AND site_id = %d", - 'admin_user_id', - $network_id - ) - ) - ); - /* * When upgrading from single to multisite, assume the current site will * become the main site of the network. When using populate_network() @@ -1079,8 +1067,19 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam ) ); $current_site->blog_id = $wpdb->insert_id; - update_user_meta( $site_user->ID, 'source_domain', $domain ); - update_user_meta( $site_user->ID, 'primary_blog', $current_site->blog_id ); + + $site_user_id = (int) $wpdb->get_var( + $wpdb->prepare( + "SELECT meta_value + FROM $wpdb->sitemeta + WHERE meta_key = %s AND site_id = %d", + 'admin_user_id', + $network_id + ) + ); + + update_user_meta( $site_user_id, 'source_domain', $domain ); + update_user_meta( $site_user_id, 'primary_blog', $current_site->blog_id ); // Unable to use update_network_option() while populating the network. $wpdb->insert(