Re: Safely timing out DBI queries



On Sat, 16 Sep 2006, Dean Arnold wrote:

I just saw your note on mysql internals, and suspect your
request there is unlikely to be given serious consideration.

Always a possibility. Maybe they'd be more interested in a patch.
(For the curious, I wrote a message to the MySQL internals
mailing-list proposing a new feature:

SELECT ... WITH TIMEOUT 10;

)

I think your best bet might be to work with the DBD::mysql maintainers
to implement some driver-specific nonblocking versions of
execute/prepare (and maybe fetch), as well as support for
'out of band' cancel.

That's an interesting idea. Right now I'm putting together
DBIx::Timeout which implements my fork()-based timeout in a reusable
package. Seems to work, although I've learned to expect forking code
to have unexpected bugs which take time to shake out.

-sam
.



Relevant Pages

  • VIA SATA Raid needs a long time to recover from suspend
    ... Then if there was an IO request made immediately after resuming, ... Changing the timeout resolved this. ... finally did clear) it would timeout and fail. ... It seemed the kernel ...
    (Linux-Kernel)
  • Big Uploads with IIS 6.0
    ... I've already posted this question on the IIS forum, ... I have an ASP.NET application that does big uploads on ... upload fails randomly (as if the server had given up on the request). ... timeout in the web.config file, ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Timeout problems
    ... I am assuming that the time out is a scripting timeout on your browser. ... we have a request to the SQL Server ... database to run a stored procedure to return the data. ...
    (microsoft.public.dotnet.general)
  • Re: Timeout errors using Net::HTTP on Windows
    ... Since this weird Net timeout issue has a solution now, ... Be careful not to have too many threads request from ... def rbuf_fill ...
    (comp.lang.ruby)
  • EAP Session
    ... in that the timeout is set to 1 second with no retries. ... EAP request/Identity has an ID set to 1 and every second another request is ... // which works around these misbehaving implementations. ... control over so changing the timeouts and retries is not an option. ...
    (microsoft.public.windowsce.platbuilder)