• Resolved Dylan Ryan

    (@irkanu)


    Hey guys & gals,

    I wanted to start off by saying we love your plugin and I’d like to submit a performance issue related to a site with over 9,000 users. I’m a developer at Valet.io & we have a client who needs a bit of scalibility. I’ll start off by describing the original issue and then what I’ve found so far.

    The original issue reported was a 500 server error when attempting to edit a single ticket. The client is hosted on WP Engine and noticed this issue was not occurring on staging, but was occurring on production.

    Here is our initial support investigation :

    1. Installed Query Monitor on prod/staging
    2. Noticed the single edit for ticket post type wasn’t generating a query monitor result on staging (usually caused by errors)
    3. Disabled Yoast SEO meta box for that post type “ticket” on staging & query monitor returned results which is good
    4. Tested #4 on production but didn’t work
    5. Noticed ~400+ queries on every admin page load
    6. Tracked #5 to “Events Manager” plugin & deactivated on staging which decreased queries to ~100+
    7. Tested on production but that did not affect the single edit for “ticket” post_type
    8. Reactivated Events Manager for now on production

    After that we had a developer dive a little deeper :

    1. Copied production to a separate install on WP Engine
    2. Successfully able to edit a single ticket, but noticed over 9,000 queries
    3. Queries generated by Awesome Support calling update_meta_cache()

    We found this related to WP_User_Query being called on a site with BuddyPress installed : https://buddypress.trac.www.ads-software.com/ticket/6601

    We believe those may be related and the root cause is near this function wpas_get_users() because it’s the function calling get_users(). I noticed the comment in that function mentions the update from your changelog :

    3.1.10 – May 20, 2015
    More performance improvements
    Fixes “Got a packet bigger than ‘max_allowed_packet’ bytes” issue on sites with lots of users

    To replicate this :

    1. Install Awesome Support
    2. Install BuddyPress
    3. Install Query Monitor
    4. Use WP CLI to generate a LOT of users ()
    5. Create a single ticket
    6. Attempt to edit a single ticket

    The temporary workaround is to comment out Line 926 of awesome-support/includes/admin/class-admin.php

    add_meta_box( 'wpas-mb-contacts', __( 'Stakeholders', 'awesome-support' ), array( $this, 'metabox_callback' ), 'ticket', 'side', 'high', array( 'template' => 'stakeholders' ) );

    The Stakeholder metabox is what kills the site – specifically the user select dropdown.

    Hopefully this a very specific bug report, but if you need anymore information don’t hesitate to reach out. ??

    See debug info below :

    [{"label":"wordpress","data":[{"key":"Site URL","value":"https://shift.ms"},{"key":"Home URL","value":"https://shift.ms"},{"key":"WP Version","value":"4.4.2"},{"key":"WP Multisite","value":"No"},{"key":"WP Language","value":"en_GB"},{"key":"WP Debug Mode","value":"No"},{"key":"WP Active Plugins","value":"43"},{"key":"WP Max Upload Size","value":"128 MB"},{"key":"WP Memory Limit","value":"512M"},{"key":"WP Timezone","value":"The timezone hasn't been set"}]},{"label":"server","data":[{"key":"PHP Version","value":"5.5.9-1ubuntu4.14"},{"key":"Software","value":"Apache"}]},{"label":"settings","data":[{"key":"Version","value":"3.2.9"},{"key":"DB Version","value":"1"},{"key":"Tickets Slug","value":"ticket"},{"key":"Products Slug","value":"product"},{"key":"Multiple Products","value":"Disabled"},{"key":"Registration Status","value":"Closed"},{"key":"Registration Page","value":"Default"},{"key":"Uploads Folder","value":"The upload folder doesn't exist but can be created"},{"key":"Allowed File Types","value":"None"},{"key":"WYSIWYG On Front","value":"No"}]},{"label":"pages","data":[{"key":"Ticket Submission","value":"https://shift.ms/thoughtsort/owl-support/ (#65534)"},{"key":"Tickets List","value":"https://shift.ms/thoughtsort/owl-support-archive/ (#65528)"}]},{"label":"email-notifications","data":[{"key":"Sender Name","value":"Shift.ms"},{"key":"Sender E-Mail","value":"[email protected]"},{"key":"Reply-To E-Mail","value":"[email protected]"},{"key":"Submission Confirmation","value":"Enabled"},{"key":"New Assignment","value":"Enabled"},{"key":"New Agent Reply","value":"Enabled"},{"key":"New Client Reply","value":"Enabled"},{"key":"Ticket Closed","value":"Enabled"}]},{"label":"custom-fields","data":[{"key":"Support Staff","value":"Capability: create_ticket, Core: Yes, Required: No, Logged: Yes, Show Column: No, Taxonomy: No, Callback: text"},{"key":"Status","value":"Capability: create_ticket, Core: Yes, Required: No, Logged: No, Show Column: Yes, Taxonomy: No, Callback:"},{"key":"Ticket Tag","value":"Capability: create_ticket, Core: Yes, Required: No, Logged: Yes, Show Column: Yes, Taxonomy: Yes (standard), Callback: taxonomy"}]},{"label":"plugins","data":[{"key":"Installed","value":"ManageWP - Worker by ManageWP version 4.1.28, Query Monitor by John Blackbourn version 2.8.1, VaultPress by Automattic version 1.7.8, Gravity Forms by rocketgenius version 1.9.16, Expired by James Hammack version 1.1, WP Valet Unset Pingback by Dylan Ryan version 1.0.0, Agreeable by kraftpress version 1.4, Akismet by Automattic version 3.1.7, Auto-Close Comments, Pingbacks and Trackbacks by Ajay D'Souza version 1.6, Awesome Support by ThemeAvenue version 3.2.9, Ban Hammer by Mika Epstein version 2.5.3, bbPress by The bbPress Community version 2.5.8, BP Profile Search by Andrea Tarantini version 4.4.2, BP Show Friends by imath version 2.0, BuddyPress Group Email Subscription by Deryk Wenaus, boonebgorges, r-a-y version 3.6.0, BuddyPress Private Messages for Friends Only by r-a-y version 1.1, BuddyPress Usernames Only by r-a-y version 0.6, BuddyPress Xprofile Custom Fields Type by donmik version 2.4.1, BuddyPress by The BuddyPress Community version 2.4.3, Cookie Law Info by Richard Ashby version 1.5.3, Events Manager by Marcus Sykes version 5.6.2, MailChimp for WordPress by ibericode version 3.1.3, MailChimp User Sync by ibericode version 1.4.1, PixelYourSite by PixelYourSite version 2.2.3, Redirection by John Godley version 2.4.3, Regenerate Thumbnails by Alex Mills (Viper007Bond) version 2.2.6, Responsive Lightbox by subhansanjaya version 1.3.2, Seamless Sticky Custom Post Types by Jascha Ephraim version 1.4, Shift.ms — Energy Posts by Zé Fontainhas version 1.0, Shift.ms — Promos by Zé Fontainhas version 4.0, Shift.Ms — Thought Sort by Ze Fontainhas version 0.0.5, Stream by XWP version 3.0.4, TinyMCE Advanced by Andrew Ozz version 4.2.8, User Role Editor by Vladimir Garagulya version 4.23.2, Welcome Pack by Paul Gibbs version 3.3, WordPress Importer by wordpressdotorg version 0.6.1, Yoast SEO by Team Yoast version 3.0.7, WordPress Social Login by Miled version 2.3.0, WP Better Emails by Nicolas Lemoine version 0.3, WP Maintenance Mode by Designmodo version 2.0.3, WP Migrate DB Pro by Delicious Brains version 1.5.5, WP reCaptcha Integration by J?rn Lund version 1.1.10, wpMandrill by Mandrill version 1.33"}]},{"label":"theme","data":[{"key":"Theme Name:","value":"Shift Ms"},{"key":"Theme Version:","value":"1.0.0"},{"key":"Theme Author URL:","value":"https://shift.ms/"},{"key":"Is Child Theme:","value":"No"}]},{"label":"templates","data":[{"key":"Overrides:","value":"list.phpsubmission.php"}]}]

    https://www.ads-software.com/plugins/awesome-support/

Viewing 2 replies - 1 through 2 (of 2 total)
Viewing 2 replies - 1 through 2 (of 2 total)
  • The topic ‘Scalability of plugin with over 9,000 users –’ is closed to new replies.