Manual:$wgTransactionalTimeLimit

From Linux Web Expert

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
<translate> Performance hacks and limits</translate>: $wgTransactionalTimeLimit
Throttle for timing out transactional POST requests
<translate> Introduced in version:</translate>1.26.0 (Gerrit change 230265; git #9bba2d16)
<translate> Removed in version:</translate><translate> still in use</translate>
<translate> Allowed values:</translate>(integer)
<translate> Default value:</translate>120

Details

Typically, web requests should be rather quick, and PHP tends to have a 30 second default timeout, which is fairly high. However, MediaWiki can sometimes be very slow with certain operations, such as page saves, and these operations may furthermore involve updates to multiple datastores that ideally should all happen or not happen at all. All POST requests set ignore_user_abort() to avoid client-initiated aborts causing half-written data. Certain requests call a special method that also raises the time limit to $wgTransactionalTimeLimit to both give the requests a chance to finish (as it might be slow) and to avoid timing out when only some of the writes where done.

By having this value, site admins can use fairly low timeouts to help avoid DOS and wasted threads, but avoid half-written writes due to timeouts at the same time.