Closed benbober closed 5 years ago
un premier problème semble être dû à des changements de gestion de configuration qui faisait requêter wikidata.org plutôt que l'instance Wikibase local (d'où, j'imagine, l'échec de la démo d'une sprint review précédente), je vais voir si un rebase sur la branche master de wikimedia suffit à résoudre le problème, ou s'il faut supprimer les volumes et recharger les entités Wikibase local. Le plus simple serait de supprimer les volumes et repartir de zero : ce serait ok pour vous ou vous avez commencer à construire des entités que vous aimeriez conserver ? cc @gotnc
ok de notre côté
ok aussi pour l'ABES
Compte-rendu d'exploration du problème :
J'ai mis un bout de temps à m'en rendre compte, mais il y a un décalage entre wmde/wikibase-docker#master (et donc abes-esr/poc-fne-wikibase-docker#poc-fne) et les images Docker taggué comme latest
mais en fait déjà plus à jour qui sont celles utilisées lorsque l'on exécute docker-compose -f docker-compose.yml up
, ce fichier docker-compose.yml
se basant sur ces images outdatées. Nous continuons donc à utiliser une image antérieur au patch devant résoudre le problème que j'évoquais dans le commentaire plus haut
Pour utiliser des images à jour, en attendant que celles-ci soient publiées par wmde, il faudrait (à vérifier) soit rebuilder l'image voulu avec un tag écrasant localement celui de hub.docker.com - cd wdqs-frontend/latest && docker build -t wdqs-frontend:latest .
, soit utiliser le fichier docker-compose alternatif docker-compose -f docker-compose-build.yml up
Dans un cas comme dans l'autre, cela suppose une installation Docker récente compatible avec la version des Dockerfile
à rebuild, ce qui ne semble pas être le cas du serveur de l'ABES; cd wdqs-frontend/latest && docker build -t wdqs-frontend:latest .
génère l'erreur suivante :
Sending build context to Docker daemon 9.728 kB
Step 1/19 : FROM ubuntu:xenial as fetcher
Error parsing reference: "ubuntu:xenial as fetcher" is not a valid repository/tag: invalid reference format
Reste la possibilité de corriger manuellement l'erreur, mais c'est une béquille temporaire qu'il faudra refaire à chaque rebuild des containers, en attendant qu'une des solutions précédentes marche.
En l'occurence, le problème est l'absence du fichier custom-config.json
dans le container wdqs-frontend
(comme l'indique l'erreur 404 sur la requête GET http://localhost:8282/custom-config.json
depuis l'interface du Query Service), ce qui peut être réparé avec la commande suivante (reproduisant donc la commande d'entrypoint.sh
patché sur master mais pas encore patché dans l'image wdqs-frontend:lastest
):
container_id=$(docker ps | grep wdqs-frontend | awk '{print $1}')
docker exec -it $container_id sh -c 'envsubst < /templates/custom-config.json > /usr/share/nginx/html/custom-config.json'
Je viens d'executer cette commande sur l'instance de l'ABES, cela résoud les problèmes de configuration du endpoint SPARQL et d'autocompletion : @benbober peux-tu réessayer de faire tes requêtes, voir qui continuerait de ne pas marcher ?
Les requêtes ultra-simples que j'ai testées fonctionnent et renvoient bien sur notre instance sans avoir à déclarer d'espace de noms, que ce soit depuis l'adresse publique ou l'adresse interne ABES. En revanche, l'auto-complétion, la coloration syntaxique, la numérotation des lignes ne fonctionnent pas et l'affichage des résultats se fait toujours dans un fichier json à part. Il ne me semble pas possible de modifier ce comportement depuis l'interface utilisateur
si tes requêtes sont faites depuis https://poc-fne-query.abes.fr, il est possible qu'on soit dans un problème similaire à #205
J'ai testé aussi bien https://poc-fne-query.abes.fr que l'adresse interne.
@benbober pourrais-tu faire un gif d'illustration ainsi qu'un copier-coller des logs dans la console du navigateur ? (dans Firefox : Ctrl+Shift+K pour ouvrir la console, puis clic-droit sur un des messages de logs, sélectionner "Copier les messages visibles de la console dans le presse-papiers")
Ok, je m'en charge, mais régler ce problème spécifique ne me semble pas être une priorité pour ce sprint pour Vincent et toi. @AnilAng @gotnc vous en pensez quoi ?
D'accord avec toi @benbober ; sauf si le problème s'avère bloquant, les tickets créés pour le sprint en cours sont prioritaires
@maxlath On en est revenu au même point qu'initialement: une requête select * where {wd:Q1 ?b ?c.} ne renvoie rien
@benbober oui, les logs pendant le chargement semblait indiquer des problèmes :
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized subjects: [https://poc-fne.abes.fr/prop/P11, https://poc-fne.abes.fr/prop/novalue/P11, https://poc-fne.abes.fr/prop/qualifier/P11, https://poc-fne.abes.fr/entity/P11, https://poc-fne.abes.fr/prop/reference/P11, https://poc-fne.abes.fr/prop/qualifier/value/P11, https://poc-fne.abes.fr/prop/direct/P11, https://poc-fne.abes.fr/prop/statement/value/P11, https://poc-fne.abes.fr/wiki/Special:EntityData/P11, https://poc-fne.abes.fr/prop/statement/P11, https://poc-fne.abes.fr/prop/reference/value/P11] while processing http://wikibase.svc/entity/P11. Expected only sitelinks and subjects starting with http://wikibase.svc/wiki/Special:EntityData/ and http://wikibase.svc/entity/
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/prop/P11 p:http://www.w3.org/1999/02/22-rdf-syntax-ns#type o:http://www.w3.org/2002/07/owl#ObjectProperty
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/prop/novalue/P11 p:http://www.w3.org/1999/02/22-rdf-syntax-ns#type o:http://www.w3.org/2002/07/owl#Class
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/prop/novalue/P11 p:http://www.w3.org/2002/07/owl#complementOf o:_:genid-3040b608b2904a47afd73d1b9c08dcc5-genid1
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/prop/qualifier/P11 p:http://www.w3.org/1999/02/22-rdf-syntax-ns#type o:http://www.w3.org/2002/07/owl#DatatypeProperty
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://www.w3.org/1999/02/22-rdf-syntax-ns#type o:http://wikiba.se/ontology#Property
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://www.w3.org/1999/02/22-rdf-syntax-ns#type o:http://wikiba.se/ontology#Property
wdqs-updater_1 | 15:29:32.987 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#propertyType o:http://wikiba.se/ontology#String
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#directClaim o:https://poc-fne.abes.fr/prop/direct/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#claim o:https://poc-fne.abes.fr/prop/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#statementProperty o:https://poc-fne.abes.fr/prop/statement/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#statementValue o:https://poc-fne.abes.fr/prop/statement/value/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#qualifier o:https://poc-fne.abes.fr/prop/qualifier/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#qualifierValue o:https://poc-fne.abes.fr/prop/qualifier/value/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#reference o:https://poc-fne.abes.fr/prop/reference/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#referenceValue o:https://poc-fne.abes.fr/prop/reference/value/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://wikiba.se/ontology#novalue o:https://poc-fne.abes.fr/prop/novalue/P11
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://www.w3.org/2000/01/rdf-schema#label o:"unimarc_008"@fr
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://www.w3.org/2004/02/skos/core#prefLabel o:"unimarc_008"@fr
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://schema.org/name o:"unimarc_008"@fr
wdqs-updater_1 | 15:29:32.988 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - Unrecognized statement: s:https://poc-fne.abes.fr/entity/P11 p:http://www.w3.org/2000/01/rdf-schema#label o:"unimarc_008"@en
wdqs-updater_1 | 15:29:32.989 [update 8] INFO o.wikidata.query.rdf.tool.rdf.Munger - More than 20 unrecognized statements, further statements not logged.
ça doit être une des raisons
le problème ne semble pas venir de wikibase
(le server retourne des entités serialisé avec le prefixe wd
(ex: wd:Q327
)) mais plutôt de wdqs-updater
qui remplacerait wd:
par https://poc-fne.abes.fr/entity
, URL qui n'est pas reconnu comme un sujet valide.
Unrecognized subjects: [https://poc-fne.abes.fr/entity/Q3278, https://poc-fne.abes.fr/entity/statement/Q3278-e3cadb76-44b1-cc3b-e090-9d4459cd6f2f].
Expected only sitelinks and subjects starting with http://poc-fne.abes.fr/wiki/Special:EntityData/ and http://poc-fne.abes.fr/entity/
D'où wdqs-updater
déduit il le nom de domain avec ce protocole ? J'ai essayé de jouer avec les variables d'environement disponible pour ce service (WIKIBASE_HOST
et UPDATER_OPTS
) mais aucune ne semble accepter de protocole. Une autre possibilité serait que le protocole soit déduit directement du server Wikibase, mais je n'arrive pas à déterminer où cela se fait
en attendant de résoudre ce problème, j'ai donc généré, formaté et chargé un dump manuellement dans BlazeGraph, de sorte qu'il est possible de faire des requêtes sur les entités présentement dans Wikibase
Exemple:
PREFIX fne: <https://poc-fne.abes.fr/entity/>
PREFIX fnet: <https://poc-fne.abes.fr/prop/direct/>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX p: <https://poc-fne.abes.fr/prop/>
PREFIX ps: <https://poc-fne.abes.fr/prop/statement/>
PREFIX pq: <https://poc-fne.abes.fr/prop/qualifier/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX bd: <http://www.bigdata.com/rdf#>
SELECT ?personne {
?personne fnet:P31 fne:Q6 .
}
dans la configuration actuel, Wikibase retourne des fichier ttl avec des URI en https
( see https://poc-fne.abes.fr/wiki/Special:EntityData/Q1969.ttl?flavor=dump )
Ce qui ne plait toujours pas à wdqs-updater, malgré la variable d'environement WIKIBASE_SCHEME=https
. J'en viens à suspecter que le support des URI https n'est pas complet, query.wikidata.org semblant utiliser des URI wikidata en http simple. Une solution pourrait être de changer $wgServer
de https://poc-fne.abes.fr
à http://poc-fne.abes.fr
, mais cela risque d'avoir des répercussions ailleurs, je pense donc préférable d'en rester là pour le moment, à savoir avec un Query Service mis à jour avec un dump #218
Comme discuté ce matin, l'itération 6 étant terminée il est décidé de ne pas poursuivre sur la résolution de ce ticket. Je clos.
Le service ne marche pas du tout : une requête simple ne renvoie aucun résultat et en plus le fait dans un fichier json à part, et non dans un tableau en dessous de la requête, comme le fait le query service de wikidata. Pas non plus d'autocomplétion. Comme je ne suis pas sûr qu'il s'agisse d'un problème semblable à celui du ticket sur l'autocomplétion (le problème se pose sur l'adresse publique comme sur l'adresse interne), je fais un ticket à part.