Page MenuHomePhabricator

Test read logic of new terms store on test node
Closed, ResolvedPublic

Description

Wiating on T225603

How to test

  1. Make sure you have wikibase extension tree on https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Wikibase/+/517148
  1. You should have the following in LocalSettings.php:
$wgWBRepoSettings['tmpPropertyTermsMigrationStage'] = MIGRATION_WRITE_NEW;
$wgWBClientSettings['tmpPropertyTermsMigrationStage'] = MIGRATION_WRITE_NEW;

// for convineince during the test, bypass caching
$wgMainCacheType = CACHE_NONE;
$wgParserCacheType = CACHE_NONE; # optional
$wgMessageCacheType = CACHE_NONE; # optional
  1. Create a property, or use an existing property
  1. Hide all terms of that property from wb_terms table (you can use sql repl php /var/www/html/maintenance/sql.php to execute sql):
UPDATE wb_terms SET term_full_entity_id = "hidden_Pxxx" WHERE term_full_entity_id = "Pxxx"; -- replace Pxxx with the property full id
  1. go over the use cases.. properties should render properly.

Use Cases to test

  • Rendering property labels in statements blocks (uses PropertyLabelResolver).
  • Rendering property labels & descriptions in search results when searching for a property when adding a statement (users PrefetchingTermLookup).
  • Rendering property labels on Special:AllPages?namespace=122 (or 120 depending on wiki configuration)
  • Rendering property labels on Special:RecentChanges
  • ...

Event Timeline

alaa_wmde renamed this task from Test read logic on test node to Test read logic of new terms store on test node.Jun 17 2019, 10:37 AM
alaa_wmde updated the task description. (Show Details)

I tested those cases (✅ works, 🔴 broken).

✅ Rendering property labels in statements blocks (uses PropertyLabelResolver).
✅ Rendering property labels & descriptions in search results when searching for a property when adding a statement (users PrefetchingTermLookup).

@hoo @Lucas_Werkmeister_WMDE @Addshore @Ladsgroup any other use cases to check?

the mentioned two cases in task description already cover the two interfaces that are used to read from terms store, and when migration stage is WRITE_NEW, our implementations for the new store should be in use. There could be some critical use-cases that need to be tested (perhaps with caching enabled too) as well just for increased safety and confidence.

alaa_wmde updated the task description. (Show Details)
alaa_wmde updated the task description. (Show Details)

✅ Rendering property labels in statements blocks (uses PropertyLabelResolver).

I don’t think that uses PropertyLabelResolverPropertyLabelResolver turns labels into property IDs, when rendering statements we turn property IDs into labels. As far as I’m aware, PropertyLabelResolver is only used for the WikibaseClient Lua and parser functions. (As long as the repo wikis has WikibaseClient enabled, you don’t need a separate wiki to test this.)

✅ Rendering property labels in statements blocks (uses PropertyLabelResolver).

I don’t think that uses PropertyLabelResolverPropertyLabelResolver turns labels into property IDs, when rendering statements we turn property IDs into labels. As far as I’m aware, PropertyLabelResolver is only used for the WikibaseClient Lua and parser functions. (As long as the repo wikis has WikibaseClient enabled, you don’t need a separate wiki to test this.)

Thanks for the adding more cases @Lucas_Werkmeister_WMDE

True. I must have got confused while trying to navigate through references in the code to understand where those are used .. so then it must be used the PrefetchingTermLookup?)

Test run: I tested those cases (✅ works, 🔴 broken).

✅ Rendering property labels in statements blocks
✅ Rendering property labels & descriptions in search results when searching for a property when adding a statement
✅ Rendering property labels on Special:AllPages?namespace=122
✅ Rendering property labels on Special:RecentChanges

alaa_wmde removed alaa_wmde as the assignee of this task.EditedJun 21 2019, 7:33 AM

Moving back to To Do to be picked up again once T225603 is done and all patched are merged, so that this is tested on master branch.

@alaa_wmde this can go to the To Do column again, can't it?

This can be tested again. Maybe we want to switch test wikidata to read properties from new store

Addshore closed this task as Resolved.EditedNov 19 2019, 12:52 PM
Addshore claimed this task.

Per chatting with @Ladsgroup

The read part is in production for properties and it works just fine
There are issues, and they are all already known (via other tickets)