Hello,
As part of simplifying and modernizing the database load balancing logic in
MediaWiki, we have now deprecated several functionalities in rdbms library:

If you're writing MediaWiki code that involves getting a database
connection:

   - Trying to get a replica with a group (with the exception of "dump" and
   "vslow") is discouraged.
   - Starting from 1.45, attempts to get a replica with any group except
   "vslow" or "dump" will trigger a deprecation warning
   - Starting from 1.46, attempts to get a replica that is not vslow/dump
   will be just ignored and a replica from the general group will be returned.


If you're maintaining a MediaWiki setup with more than one replica:

   - Starting from 1.46, MediaWiki load balancer configuration ignores
   "groupLoads" and "groupLoadsBySection". So if you have replicas pooled in
   such groups only, they will be effectively depooled.
   - Also from 1.46: In every general set of replicas, rdbms library
   designates the replica with lowest weight as the "vslow" replica and
   directs queries with vslow/dump group accordingly.
   - If you have many replicas and rely on groups, it's better to enable
   "shuffleSharding" instead (example
   <https://gerrit.wikimedia.org/r/c/operations/mediawiki-config/+/1193108>).
   This will force rdbms library to show only three randomly (but
   consistently) picked replicas to each client IP which would improve cache
   locality and fault tolerance. This feature is available from 1.45 onwards.


If you have any questions. Feel free to comment on the ticket:
https://phabricator.wikimedia.org/T405087

Best
-- 
*Amir Sarabadani (he/him)*
Staff Database Architect
Wikimedia Foundation <https://wikimediafoundation.org/>
_______________________________________________
Wikitech-l mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/

Reply via email to