[00:00:35] $wgObjectCaches just says see the class documentation, but the class documentation is misleading because it omits all the normalisation done by the wiring [00:01:28] https://doc.wikimedia.org/mediawiki-core/master/php/config-vars_8php.html#a00a35098578be59fdcccce49f380acac [00:01:33] Looks like that "@see" doesnt' actually work.. [00:03:03] on the relevant gerrit change with Daniel, IIRC I wrote a comment "please fix @see in doxygen" and he replied "done" [00:03:22] I wrote something more elaborate for RLModules, FileBackend, RCFeeds etc. [00:03:24] https://doc.wikimedia.org/mediawiki-core/master/php/classMediaWiki_1_1MainConfigSchema.html [00:03:35] And this e.g. seems to be missing a lot of entries, e.g. no entry for ::RCFeeds? [00:03:35] but if doxygen can't understand a fully-qualified class name I guess that is doxygen's problem [00:04:28] TimStarling: indeed, https://github.com/doxygen/doxygen/issues/8384 [00:05:03] It works slightly better when makign an explicit @ref but the bare references seem to not allow that by default [00:06:34] ok, adding braces is pretty simple [00:07:16] There being only 1 maintainer and the code being quite a mess and search being poor ( https://github.com/doxygen/doxygen/issues/8877 ) has made me re-explore phpDoc again, but that seems quite immature by comparison even now all those years later. phpDoc is fine for a small project where it all fits on one page basically, but still quite unprepared for larger projects unfortunately... And systems like wordpress have a fully custom thing [00:07:16] entirely. Perhaps worth reaching out to make some of that more re-usable. but anyway, can't prioritise any of that :) [00:07:30] ack, for the stuff we machine-generate we can make it use the less obvious syntax [00:07:50] you know the whole config-vars.php exists because you said you needed it, I turned a comment you made in a meeting into a -1 on the patch [00:07:51] * Krinkle goes back to writing Perf hero award, on a day he was meant to be OOO. [00:09:32] Yeah, we have lots of references to $wg vars in docs and that seems useful to keep resolving. also for IDEs, and for do-what-I-mean in writing. I don't expect people to write @ref {MediaWiki\MainConfigSchema::Foo} every time they mention something in a comment, but $wgFoo seems reasonable intuitive and memorable. [00:34:17] this would be simpler if it were split into two classes [00:34:29] I mean two subclasses with a base class [00:34:54] so many times it has an if block testing whether it is using LoadBalancer or server array [00:38:53] at 1900 lines in master it is asking to be split up anyway [00:41:43] I guess I should commit with just config cleanup first before I start ripping it all apart [00:50:50] TimStarling: I amended the patch to remove localKeyLB [00:52:42] ok [00:58:18] I think everything you've done here is also done in my working copy [00:59:52] so I can either rebase or I can keep going as I am [01:00:11] but if I rebase I have to verify that your patch works because I assume you haven't tested it [01:02:41] the main difference is that I don't have SHARD_LB_CLUSTER, I'm moving towards a configured LB mode with a view towards splitting the classes in future [01:03:42] so instead of if ( $shardIndex === self::SHARD_LB_CLUSTER ) I would have if ( $this->useLB ) [01:09:25] also I'm removing globalKeyLB, instead there is loadBalancerCallback which is a closure injected by ObjectCache [01:09:45] and the config will have string "cluster" as discussed above [01:10:31] the constructor becomes @internal [01:17:40] why did you (in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/529203 ) rename servers to shards? why do we need two things called shards? [04:42:28] my patch is up now at https://gerrit.wikimedia.org/r/c/mediawiki/core/+/798030 [05:40:50] really, table shard stuff should be called "partition" and server stripe stuff "shard" [05:56:54] they're not partitions though [05:57:59] I mean, they don't use the partition option to create table [06:00:30] I would be fine with calling neither of them shards [06:00:45] we have multiple servers in the memcached classes without calling them shards [06:04:11] it can just be "servers". As long as the comments are clear, I don't care either way.