Page MenuHomePhabricator

Wikibase\EntityView::getBasicEntityInfo must not load full data for all referenced entities.
Closed, ResolvedPublic


Version: unspecified
Severity: critical



Event Timeline

bzimport raised the priority of this task from to Unbreak Now!.Nov 22 2014, 2:28 AM
bzimport set Reference to bz56903.
bzimport added a subscriber: Unknown Object (MLST).

Wikibase\EntityView::getBasicEntityInfo currently loops over all referenced entities, loads each of them, and then generates a serialization only containing labels, descriptions and data types (see EntityRevisionSerializer::newForFrontendStore).

This is causing serious performance issues (in terms of time as well as memory).

The solution would be to load labels and descriptions from the terms table, and the data type from the property_info table. We'll also have to grab the revision info from the page table (joining against entity_per_page).

Change 94738 merged by jenkins-bot:
(bug #56903) Introducing EntityInfoBuilder

Verified in Wikidata demo time.