• Resolved TheArcturian

    (@thearcturian)


    Last version 5.1.0 overloads our MySQL server process. Task Manager shows a load of 99% on the CPU when showing a post with comments. Never had this problem before at all.

    Is there any way you have changed any SQL queries or doing some large tasks in the background?

    We upgraded from 5.0.7 to 5.1.0.

    We have already rolled back to 5.0.7 to avoid full stop of our online magazine.

Viewing 15 replies - 1 through 15 (of 16 total)
  • Plugin Author gVectors Team

    (@gvectors-team)

    It would be better if we have some logs of SQL commands. In any case I’d recommend to disable new features and enable those one by one in a day to check them. Please navigate to Dashboard > Comments > Settings > Comment Form Tab and disable these two features by enabling the “Hide” options:

    2018-05-25_1234

    – Hide “Discussion Statistic” section
    – Hide “Recent Comment Authors” section

    • This reply was modified 6 years, 6 months ago by gVectors Team.

    After installing this new version, our site has collapsed in 30 seconds. 100% MySQL load. We had to remove the plugin via an FTP access because we couldn’t even work in the WordPress admin dashboard because the MySQL server didn’t respond under this heavy load. For now we’re back on the previous version 5.0.7.

    Thread Starter TheArcturian

    (@thearcturian)

    Yeah, we had the same heavy impact, but we were able to remote control the server (Windows Server) and stop the process and roll back the plugin.

    Something is seriously not working right in the new version and I have no time to troubleshoot now. I hope it will be an update for this problem.

    Plugin Author gVectors Team

    (@gvectors-team)

    @nephalem and @thearcturian.
    wpDiscuz 5.1.0 replace all IP addresses of comment votes to MD5 hashed strings to make your life easier related to User Data Protection issues. In case if your hosting service is poor or you have a large amount of comment votes it may take a few seconds or few minutes. During this the MySQL may use 50-100% CPU. You should not worry and disable this plugin. All what you’ve done are not correct. You should not deactivate and delete the plugin. You just need to wait. These processes will be automatically finished and sorted once the update process is finished. There is no any reason for panic. Nothing is damaged and nothing is crashed during this process. This is a one time vote IP to MD5 hashing update process, which works fine on 99% websites and works a little bit slow in 1% cases (your case).

    Well, I do understand this measure is intended to handle the entire GDPR hysteria but this process of hashing has knocked down our production site and rendered our MySQL server completely inoperable. We have hundreds of thousands of comments in our database btw.

    We don’t run our site on any “hosting service” but on a dedicated server which serves thousands of people every single moment. That may seem OK for some small private blog to bring it down for a couple of minutes and wait fot the hash process to be completed but a commercial production site must be running without any significant impact. Therefore some limiter should be put in place in terms of how many hash cycles/comments is processed at once per minute in order to prevent the MySQL infrastructure from reaching its bottleneck. At this moment the newest version of this plugin behaves more like a hash stress test.

    If you put some hash-per-minute limiter into the code of the next release of your plugin, we will gladly give a chance to it again. For now we’re sticking to v5.0.7 which works absolutely perfectly.

    Thread Starter TheArcturian

    (@thearcturian)

    We have a dedicated HP rackserver running in a datacenter for our online magazine. I totally agree with Nephalem here. We have to stick with 5.0.7 until you do this upgrade more gradually in the background.

    Plugin Author gVectors Team

    (@gvectors-team)

    The server doesn’t matter if you have a large number of votes. You just need to wait for a while. I already mentioned he duration range.
    In any case you’ll be able to update it using a separate button. The process is removed form update.

    Same problem. I had to replace the version 5.1.0 to 5.0.7 because it blocked the server whenever approve a comment. The server is didated, with 16Gb and more than 32,000 comments.

    I had same problem, with MySQL overloaded. Using the MySQL slow queries log, I’ve found these queries lasting more than 40 seconds to execute. I’ve disabled WPDiscuz temporaly until the problem can be solved.

    
    # Time: 180528 12:54:51
    # Query_time: 41.808263  Lock_time: 0.000054 Rows_sent: 5  Rows_examined: 4507961
    SELECT * FROM wp_comments WHERE (comment_ID, comment_date_gmt) IN (SELECT MAX(comment_ID), MAX(comment_date_gmt) FROM wp_comments WHERE comment_post_ID = _______ AND comment_approved = 1 AND comment_aut
    hor_email!= '' GROUP BYcomment_author_email) ORDER BYcomment_date_gmtDESC,comment_ID DESC LIMIT 5;
    
    # Time: 180528 12:54:52
    # Query_time: 42.325572  Lock_time: 0.000044 Rows_sent: 5  Rows_examined: 4507961
    SELECT * FROM wp_comments WHERE (comment_ID, comment_date_gmt) IN (SELECT MAX(comment_ID), MAX(comment_date_gmt) FROM wp_comments WHERE comment_post_ID = ________ AND comment_approved = 1 AND comment_aut
    hor_email!= '' GROUP BYcomment_author_email) ORDER BYcomment_date_gmtDESC,comment_ID DESC LIMIT 5;
    
    • This reply was modified 6 years, 6 months ago by lbracci.
    • This reply was modified 6 years, 6 months ago by lbracci.
    • This reply was modified 6 years, 6 months ago by lbracci.

    As I can see, those SQL commands are being used in the file includes/class.WpdiscuzDBManager.php, in the function getRecentAuthors(). The function apparently is being used only once, in the line 65 in utils/form-bottom-statistics.php.

    As a temporary solution, I’ve commented that line and I’ve enabled the plugin again, and everything is working fine. I hope that next version of the excellent WpDiscuz plugin will have a definitive solution for this problem.

           <?php 
    //  $recentAuthorsComments = $this->dbManager->getRecentAuthors($postId, $authorsLimit, false); 
    ?>
    
    Plugin Author gVectors Team

    (@gvectors-team)

    Thank you @lbracci,
    We already aware of this issue and are currently working on this. This issue only exists on websites with millions of comments. We do our best to make it light for next version, it comes very soon.

    Thanks @lbracci, the modification works perfectly. We will wait for the next version of the best comment plugin. My blog can not live without him.

    Plugin Author gVectors Team

    (@gvectors-team)

    You don’t need to do any modification. Just navigate to Dashboard > Comments > Settings > Comment Form admin page and enable the “Hide Recent Comment Authors section” of the “Comment Form components” option until the new version is released.

    Sorry, I had understood that the code had to be modified. I have already changed the configuration. Now worked. Excellent. Thank you very much for creating this awesome plugin.

    Plugin Author gVectors Team

    (@gvectors-team)

    wpDiscuz 5.1.1 is released please update and leave some feedback related to the MySQL server overloading issue.

Viewing 15 replies - 1 through 15 (of 16 total)
  • The topic ‘Version 5.1.0 overloads MySQL server process (99% processor load)’ is closed to new replies.