Change record status: 
Project: 
Introduced in branch: 
7.x
Introduced in version: 
7.76
Description: 

There's a lock on cache miss in D7's variable_initialize() and threads which failed to acquire this lock would wait, which is often unnecessary and can cause performance problems under high load / concurrency, especially if the variable system is being abused / frequently updated.

In Drupal 7.76 waiting on the lock became optional and off by default, which should typically be a performance improvement for most sites.

If this change causes issues for your site, you can revert to the original behaviour whereby threads which get a cache miss and fail to acquire the lock will wait. This can be done by setting the following variable in settings.php

$conf['variable_initialize_wait_for_lock'] = TRUE;
Impacts: 
Site builders, administrators, editors
Updates Done (doc team, etc.)
Online documentation: 
Not done
Theming guide: 
Not done
Module developer documentation: 
Not done
Examples project: 
Not done
Coder Review: 
Not done
Coder Upgrade: 
Not done
Other: 
Other updates done
Details: 
Progress: