[wp-trac] [WordPress Trac] #26050: Continual Admin Page POST (HeartBeats?) Can Cause SQL Connection Issues

WordPress Trac noreply at wordpress.org
Fri Nov 15 19:14:10 UTC 2013


#26050: Continual Admin Page POST (HeartBeats?) Can Cause SQL Connection Issues
-------------------------------------+-----------------------------
 Reporter:  optimized-marketing.com  |      Owner:
     Type:  defect (bug)             |     Status:  new
 Priority:  normal                   |  Milestone:  Awaiting Review
Component:  General                  |    Version:  3.7.1
 Severity:  normal                   |   Keywords:
-------------------------------------+-----------------------------
 The admin pages (/wp-admin/widget.php, /wp-admin/index.php, etc..) will
 continually POST to admin-ajax.php ever 2.5-3 min. If multiple admin pages
 are open for long periods of time(ex. over night) the SQL Connections
 associated with the POSTs will begin to progressively have longer sleep
 times. I have seen MYSQL Connecitons Sleep upwards of 45 seconds from
 these POSTs.

 This ultimately cause my Server/Account to be shutdown by my host due to
 the long sleep time taking up connections for no reason.

 I wouldn't expect the Connections to progressively sleep longer. I was
 surprised to find that the pages were Sending POSTs even when they were
 not being used(before I knew about the heartbeat api).

 Is this the expected experience/results? Should there be a sleep setting
 on these POSTs to stop after a given time frame? Or can all of these be
 rolled into 1 POST?

 To Reproduce:
 Open up the following in their own tabs: /wp-admin/widgets.php, /wp-
 admin/index.php, /wp-admin/theme.php, /wp-admin/theme-edit.php, /wp-
 admin/plugins.php, /wp-admin/post.php

 Verify they are making post requests ever 2.5-3min, I use Tamper Data add-
 on for firefox, but fiddler or any other http collector will do.

 In MYSQL watch the connections by using the command: show full
 processlist;

 run the SQL command as soon as you see the POST occur in tamper data or
 fiddler. Notice the Sleep and time is 0 for the POST request. you might
 not see it in the process list at first since it is so quick.

 Once POSTs are occuring ever few min and MySQL is setup to view
 processes/connections leave the pages open over night.

 Then test again in the morning by viewing the processlist once you see a
 POST submitted. It usually easiest to see when post are submitted around
 the same time. You will notice the sleep time has increased and you will
 also notice that the response times for the POSTs have increased.

 I reproduced this on twenty-thirteen theme with all plugins deactivated
 and using firefox.

--
Ticket URL: <http://core.trac.wordpress.org/ticket/26050>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software


More information about the wp-trac mailing list