Ladsgroup added a comment.
So this is the backtrace when you set
`$wgWBRepoSettings['useEntitySourceBasedFederation'] = true;`:
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:106
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/Sql/TypeDispatchingWikiPageEntityMetaDataAccessor.php:88
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/Sql/PrefetchingWikiPageEntityMetaDataAccessor.php:264
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/Sql/PrefetchingWikiPageEntityMetaDataAccessor.php:186
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/Sql/WikiPageEntityRevisionLookup.php:125
/var/lib/mediawiki2/extensions/Wikibase/data-access/src/ByTypeDispatchingEntityRevisionLookup.php:54
/var/lib/mediawiki2/extensions/WikibaseLexeme/src/DataAccess/Store/SenseRevisionLookup.php:55
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/TypeDispatchingEntityRevisionLookup.php:54
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/CachingEntityRevisionLookup.php:104
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/CachingEntityRevisionLookup.php:87
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/CachingEntityRevisionLookup.php:104
/var/lib/mediawiki2/extensions/Wikibase/lib/includes/Store/CachingEntityRevisionLookup.php:87
/var/lib/mediawiki2/extensions/Wikibase/repo/includes/Api/GetEntities.php:275
/var/lib/mediawiki2/extensions/Wikibase/repo/includes/Api/GetEntities.php:257
/var/lib/mediawiki2/extensions/Wikibase/repo/includes/Api/GetEntities.php:136
/var/lib/mediawiki2/includes/api/ApiMain.php:1595
/var/lib/mediawiki2/includes/api/ApiMain.php:500
/var/lib/mediawiki2/tests/phpunit/includes/api/ApiTestCase.php:106
/var/lib/mediawiki2/extensions/Wikibase/repo/tests/phpunit/includes/Api/WikibaseApiTestCase.php:156
/var/lib/mediawiki2/extensions/WikibaseLexeme/tests/phpunit/mediawiki/Api/LexemeGetEntitiesTest.php:105
/var/lib/mediawiki2/tests/phpunit/MediaWikiTestCase.php:427
/var/lib/mediawiki2/maintenance/doMaintenance.php:99
This is a big red herring and waste of time, I looked at everything in depth
and nothing was responsible. The part that is actually responsible is
EntityPrefetcher. GetEntities do prefetch and when you disable
EntitySourceBasedFederation, The EntityPrefetcher is actually a federated one
which is DispatchingEntityPrefetcher but that doesn't distinguish between
different prefetchers of entity types that exist in one federated repo. It's
repo-based EntityPrefetcher. while if you set useEntitySourceBasedFederation,
it uses MultipleEntitySourceServices to get the EntityPrefetcher (I still don't
know how, otherwise I would have made the patch for it already) which that
returns ByTypeDispatchingEntityPrefetcher which ignores entity types that don't
have EntityPrefetcher defined so it lets the system flow naturally. I need to
consolidate and find a better solution than DispatchingEntityPrefetcher but
@WMDE-leszek knows way better than I do. Please take a look.
TASK DETAIL
https://phabricator.wikimedia.org/T223995
EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: Ladsgroup
Cc: matej_suchanek, Ladsgroup, WMDE-leszek, hashar, hoo, Michael, E.S.A-Sheild,
darthmon_wmde, Premeditated, alaa_wmde, joker88john, CucyNoiD, Nandana,
NebulousIris, Mringgaard, Gaboe420, Versusxo, Majesticalreaper22, Giuliamocci,
Adrian1985, Cpaulf30, Lahi, Gq86, Baloch007, Darkminds3113, Bsandipan, Lordiis,
GoranSMilovanovic, Adik2382, Th3d3v1ls, Ramalepe, Liugev6, QZanden,
LawExplorer, WSH1906, Lewizho99, Maathavan, _jensen, rosalieper, Jonas,
Wikidata-bugs, aude, Lydia_Pintscher, Darkdadaah, Jdforrester-WMF, Mbch331,
Jay8g, Krenair
_______________________________________________
Wikidata-bugs mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs