[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