Re: mysql_query blocking
| From: | Ashley Sheridan | Date: | Sat, 27 Jun 2009 19:39:39 +0000 |
| Subject: | Re: mysql_query blocking | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-294673@lists.php.net to get a copy of this message | ||
On Sat, 2009-06-27 at 15:15 -0400, Daniel Kolbo wrote:
> Hello,
>
> When a MySQL table is locked a php call of mysql_query() that requires
> that table will hang as the request blocks at the MySQL server until the
> table is unlocked. Is there a way to stop a mysql_query from hanging
> (by setting a time limit)?
>
> The php.ini directive max_execution_time does not help b/c:
> "Note: The set_time_limit() function and the configuration directive
> max_execution_time only affect the execution time of the script itself.
> Any time spent on activity that happens outside the execution of the
> script such as system calls using system(), stream operations, database
> queries, etc. is not included when determining the maximum time that the
> script has been running."
>
> The my.ini directive table_lock_wait_timeout does not work either b/c
> from MySQL:
> "This variable currently is unused. "
> (I am using mysql v5.1)
>
> I do not want to bluntly stop this from the apache level.
>
> How does one place a time limit on the execution of mysql_query()?
>
> Thanks for your help,
> dK
>
>
It depends on what type of table you have, MyISAM blocks at table level
for instance, while InnoDB locks at row level.
Thanks
Ash
www.ashleysheridan.co.uk