Lucas_Werkmeister_WMDE created this task.
Lucas_Werkmeister_WMDE triaged this task as "Normal" priority.
Lucas_Werkmeister_WMDE added projects: Wikidata, Wikibase-Quality-Constraints, Wikibase-Quality.

TASK DESCRIPTION

Currently, we cache almost the full wbcheckconstraints response (T181060). This means that we have to cache the response separately for each language, since it contains rendered messages in the user’s language. Instead, we should store some serialized form of the CheckResult objects, which should contain message objects, not rendered strings. We can then render the messages only after getting the response from the cache, so we can reuse the same cached results for all languages.

One additional benefit is that we don’t need to cache the NullResults which we generate (cf. T178160), which should also save a lot of space in the cached value (given that we expect the average entity to yield few actual results that we would cache).

This also means that we can store results from any request whose status parameter is a superset of the three “interesting” statuses violation|warning|parameter, and return cached results for any request whose status parameter is a subset of them, instead of requiring an exact match. (Currently, we require an exact match because removing CheckResult arrays from the response structure is difficult.)

Preliminary breakdown:

  • introduce message class
  • make Constraint serializable
  • make Context serializable
  • make Status serializable
  • make CheckResult serializable
  • update CachingResultsBuilder (not sure what will be necessary here – if current caching is already enabled on Wikidata, we might need to support a hybrid mode for a while)

TASK DETAIL
https://phabricator.wikimedia.org/T185709

EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: Lucas_Werkmeister_WMDE
Cc: Aklapper, Lucas_Werkmeister_WMDE, Lahi, Gq86, GoranSMilovanovic, QZanden, LawExplorer, Agabi10, Wikidata-bugs, aude, Mbch331
_______________________________________________
Wikidata-bugs mailing list
Wikidata-bugs@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs

Reply via email to