Find: /isset\(\s*([^()]+?)\s*\)\s*\?\s*\1\s*:\s*/
Replace with: '\1 ?? '
(Everywhere except includes/PHPVersionCheck.php)
(Then, manually fix some line length and indentation issues)
Then manually reviewed the replacements for cases where confusing
operator precedence would result in incorrect results
(fixing those in I478db046a1cc162c6767003ce45c9b56270f3372).
Change-Id: I33b421c8cb11cdd4ce896488c9ff5313f03a38cf
Set the logging level there to INFO. Move the ERROR level
logging to LoadMonitor, where it will trigger only on cache
regenerations, rather than every DB connection attempt.
Change-Id: I96fd513a01601544ea30a562746c49c88f84d96d
This is not really necessary and can cause problems if the local
wiki has no tables on the given database.
Bug: T172559
Change-Id: I77c1238bb59b9c060bdec22aa2f7f758e07b748c
The only user was LoadMonitor, which is converted to only use
the WAN and server caches. Previously, the lock() calls there
were useless since LBFactory never injected "memcCache" to
LoadBalancer, ergo making it EmptyBagOStuff in LoadMonitor.
Change-Id: I0c7793d47b93b763dee478d16fb87ec637dc6cab
All callers are in core and have been updated.
Other callers can now be switched from LoadBalancer type hints to
ILoadBalancer type hints. Once that migration is done, the classes
implementing it can be moved too.
Change-Id: I6b34099b5816dd8bf9646ed39f7a2d1960e2ed06
Use HTTPS instead of HTTP where the HTTP link is a redirect to the HTTPS link.
Also update some defect links.
Change-Id: Ic3a5eac910d098ed5c2a21e9f47c9b6ee06b2643
* This avoids collisions of generic and custom LB group
server list keys, which could cause warnings and errors.
* Remove $group param from scaleLoads(), which was unused
and less robust for making keys anyway.
* Remove clearCaches() method, which only had one caller
in a script that printed lag times in a loop. Its not
worth keeping and having to pass in the server index
list.
* Also guard scaleLoads() against recent server additions.
Bug: T147359
Change-Id: Idd15f0bebb68782fda36f483880cf7fe9673b940
This avoids undefined index and "servers down" errors when
using Het Deploy since only the version has the new fields.
Bug: T147359
Change-Id: Ic2d0d147df2e1c015ec4a6675294203b2adf5ed9
* Recently pooled servers will get more traffic as
their internal caches warm up by getting queries
* Also let LoadMonitor support options for flexibility
The "loadMonitor" config field now takes in array in
LoadBalancer.
* Make LoadMonitor the default instead of LoadMonitorNull.
Change-Id: I53b89b0c25bdcc30deec3f8b502fb14479c53ae8
* The LoadMonitor interface is now ILoadMonitor.
* Nothing in this code was MySQL specific.
Now any DB type can benefit from a LoadMonitor.
Change-Id: I272a72cd55a70f99a866d518d44cb3bcaca91b9e
The former extends the later with MW-specific logic.
Also removed a wf* method call from ChronologyProtector.
Change-Id: I325f59b7467ab9c2137731d1ce69816f5a020f03