Req #51295 [Opn->Asn]: SQLite3::busyTimeout not existing
Edit report at http://bugs.php.net/bug.php?id=51295&edit=1
ID: 51295
Updated by: felipe@php.net
Reported by: magicaltux@php.net
Summary: SQLite3::busyTimeout not existing
-Status: Open
+Status: Assigned
Type: Feature/Change Request
Package: SQLite related
Operating System: Linux Gentoo 2.6.33
PHP Version: 5.3SVN-2010-03-14 (SVN)
-Assigned To:
+Assigned To: scottmac
Previous Comments:
------------------------------------------------------------------------
[2010-03-14 08:29:39] magicaltux@php.net
Description:
------------
In SQLite3, method busyTimeout() is missing, and by default there is no
busy
handler.
In old SQLite extension, a default timeout of 60 seconds was set, and a
busyTimeout() method was available to define the timeout.
I recently started with SQLite3 to have this kind of errors as load was
growing
on SELECT statement:
Warning: SQLite3Stmt::execute(): Unable to execute statement: database
is locked
Some internet research showed that this could be fixed by setting a
different
busy timeout, and I noticed PHP wasn't setting any on SQLite3.
While I'm unsure about setting a default busyTimeout on SQLite3 (it
currently
have none, but PHP_5_3 is still young enough to change this kind of
behaviour)
it should be at least possible to set one.
Patch to add a SQLite3::busyTimeout() method (same behaviour as old
SQLite::busyTimeout() method, with the exception this one has a
true/false
return value, while sqlite3_busy_timeout will always return SQLITE_OK,
it may
change in the future).
The patch:
https://ookoo.org/svn/snip/php_5_3-sqlite3-busytimeout-method.patch
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=51295&edit=1
Thread (6 messages)