Page MenuHomePhabricator

Ensure server can handle mismatch requests of up to 600 Item Ids
Closed, ResolvedPublic8 Estimated Story Points

Description

Currently, both the API and the web endpoint to obtain mismatch results, cannot handle requests of more than 50 item IDs, this is due to two reasons:

  1. Both endpoints validate the maximal amount of permitted IDs at 50
  2. The web endpoint utilizes the WikibaseAPIClient to obtain labels for items and properties, which fails when requesting to format more the 50 entity ids.

In order to enable mismatch requests for a higher volume of item ids, bith issues must be mitigated.

Acceptance Criteria:

  • Validation rules for the IDs query parameter in both endpoints is updated from 50 to 600
  • The WikibaseAPIClient class batches entity requests to the API, to avoid failures.

Event Timeline

karapayneWMDE set the point value for this task to 8.Dec 13 2021, 2:58 PM

Task Breakdown notes:

  • Task to be created by @ItamarWMDE: Update validation rules for the IDs query parameter in both endpoints from 50 to 600
  • Task to be created by @Silvan_WMDE: Count entity ids in WikibaseAPIClient::getLabels() and send them to formatEntities in batches of 50, then return merged result array