Create repo-aware TermSqlIndex
Closed, ResolvedPublic

Description

To allow searches to be performed on a foreign repo via direct DB access, we need TermSqlIndex to be aware not only of the DB name, but also of the repo name. This is needed to construct EntityIds with the correct repo prefix to be used in the TermIndexEntry objects returned by TermSqlIndex.

Implementation note: TermIndexEntry is currently bound closely to the actual table structure, and there is no obvious way to supply the repo name here. The problem is rooted in the fact that the terms table uses numeric entity IDs. Some refactoring may be needed to make this work nicely.

daniel created this task.Nov 18 2016, 1:07 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptNov 18 2016, 1:07 PM
WMDE-leszek triaged this task as High priority.
WMDE-leszek moved this task from Proposed to Doing on the Wikidata-Sprint board.

Change 323846 had a related patch set uploaded (by WMDE-leszek):
[DNM]Make TermSqlIndex configured for a single repository only

https://gerrit.wikimedia.org/r/323846

Change 323846 merged by jenkins-bot:
Make TermSqlIndex configured for a single repository only

https://gerrit.wikimedia.org/r/323846

WMDE-leszek moved this task from Doing to Done on the Wikidata-Sprint board.Dec 1 2016, 8:28 AM
daniel closed this task as Resolved.Dec 5 2016, 5:50 PM