DBIx::Timeout 1.01
Sponsored Links
DBIx::Timeout 1.01 Ranking & Summary
File size:
0.006 MB
Platform:
Any Platform
License:
Perl Artistic License
Price:
Downloads:
1128
Date added:
2006-09-22
Publisher:
Sam Tregar
DBIx::Timeout 1.01 description
DBIx::Timeout is a Perl module that provides a safe method of timing out DBI requests.
The method described in the DBI documentation uses unsafe signals, which may cause memory corruption. DBIx::Timeout instead uses a separate timeout process.
The problem with using POSIX sigaction() is that it relies on unsafe signals to work. Unsafe signals are well known to cause instability. For example, imagine your DB client code is in the middle of updating some global state when the signal arrives. That global state could be left in an inconsitent state, just wait for the next time it is needed to cause problems. Since this will likely occur far from the cause, and only ocur rarely, it can be a very difficult problem to track down.
Instead, this module:
- Forks a child process which sleeps for $timeout seconds.
- Runs your long-running query in the parent process.
- If the parent process finishes first it kills the child and returns.
- If the child process wakes up it kills the parents DB thread and exits with a code so the parent knows it was timed out.
NOTE: After this call your database connection may be killed even if no timeout occurred. This is due to a race condition - the child may wake up just as parent process finishes. Patches addressing this bug are welcome. Until this is fixed you should be ready to reconnect after call_with_timeout().
The method described in the DBI documentation uses unsafe signals, which may cause memory corruption. DBIx::Timeout instead uses a separate timeout process.
The problem with using POSIX sigaction() is that it relies on unsafe signals to work. Unsafe signals are well known to cause instability. For example, imagine your DB client code is in the middle of updating some global state when the signal arrives. That global state could be left in an inconsitent state, just wait for the next time it is needed to cause problems. Since this will likely occur far from the cause, and only ocur rarely, it can be a very difficult problem to track down.
Instead, this module:
- Forks a child process which sleeps for $timeout seconds.
- Runs your long-running query in the parent process.
- If the parent process finishes first it kills the child and returns.
- If the child process wakes up it kills the parents DB thread and exits with a code so the parent knows it was timed out.
NOTE: After this call your database connection may be killed even if no timeout occurred. This is due to a race condition - the child may wake up just as parent process finishes. Patches addressing this bug are welcome. Until this is fixed you should be ready to reconnect after call_with_timeout().
DBIx::Timeout 1.01 Screenshot
DBIx::Timeout 1.01 Keywords
DBIx
DBI
Timeout 1.01
safe method
Perl module
process
method
requests
safe
timeout
timing
DBIx::Timeout
DBIxTimeout
DBIx::Timeout 1.01
Libraries
Programming
Bookmark DBIx::Timeout 1.01
DBIx::Timeout 1.01 Copyright
WareSeeker periodically updates pricing and software information of DBIx::Timeout 1.01 full version from the publisher, so some information may be slightly out-of-date. You should confirm all information before relying on it. Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future development of DBIx::Timeout 1.01 Edition. Download links are directly from our publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed
Featured Software
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com
Related Information
dbix class
dbix dwiw
perl modules
install perl module
dbix systems sdn bhd
processors
dbix class resultset
credit card processing
installing perl module
dbix malaysia
process works
xml parser perl module
process explorer
dbix class schema
dbix recordset
process mapping
due process
atrpms perl module helper
Related Software
DBIx::Frame is a Perl module for creating and maintaining DBI frameworks. Free Download
DBIx::Version is a Perl extension for getting database software name and version. Free Download
DBIx::HTML::ClientDB is a Perl module to convert sql into a client-side db with keyed access. Free Download
DBIx::DataModel is a Perl module with Classes and UML-style Associations on top of DBI. Free Download
DBIx::TableHash is a Perl module that can tie a hash to a mysql table + SQL utils. Free Download
DBIx::PDlib is a Perl with DBI SQL abstraction and convenience methods. Free Download
DBIx:DataLookup 0.03 is designed as a useful tool which can help you easily both cache records pulled by an SQL statement from a database in the memory as well as look them up later at any time during execution of your script. Free Download
DBIx::CGITables is a Perl module for easy DB access from a CGI. Free Download
Latest Software
Popular Software
Favourite Software