PHP :: Bug #63171 :: Script hangs after max_execution_time
| Bug #63171 | Script hangs after max_execution_time | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Submitted: | 2012-09-27 11:36 UTC | Modified: | - |
|
||||||
| From: | remi@php.net | Assigned: | ||||||||
| Status: | Closed | Package: | ODBC related | |||||||
| PHP Version: | 5.4.7 | OS: | GNU/Linux | |||||||
| Private report: | No | CVE-ID: | None | |||||||
[2012-09-27 11:36 UTC] remi@php.net
Description:
------------
As unixODBC functions are not async-signal-safe, nor safe to be longjmp'ed out, If a timeout occurs during an odbc calls, with a lock set, the PHP script will hangs.
I have a patch proposal, will submit a pull request.
Test script:
---------------
<?php
ini_set('max_execution_time', '1');
$db = odbc_connect('MySQL-test', 'root', '');
if (!$db) {
print "failed to connect\n";
} else {
while(true) {
echo ".";
$result = odbc_exec($db, 'SELECT * FROM mysql.user');
}
}
Expected result:
----------------
$ php test.php
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
....PHP Fatal error: Maximum execution time of 1 second exceeded in /home/rcollet/git/php/php/Regression/bz594813-ODBC-execution-timeout-hang/bz594813.php on line 10
$
Actual result:
--------------
Same output, but script hangs, need to be killed.
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2016-03-17 12:43 UTC] remi@php.net
-Status: Open +Status: Closed