Closed vbombaerts closed 1 year ago
La procédure FME télécharge toute la fiche en XML, fait des modifications sur la date de mise à jour de la donnée (ne touche pas à la date de mise à jour de la fiche), puis recharge le tout dans Metawal.
J'ai re-coché la case qu'on avait décoché dans le #812 mais ça n'a rien changé. La procédure FME a modifié la date de révision de la ressource, mais on n'a pas de trace d'édition de la fiche pour cette modification.
Voici une série de fiches que j'ai éditées à la main juste après notre réunion pour mettre à jour la date de révision de la fiche. Je les ai juste ouvertes en édition et enregistrées. Pas d'édition effective. Je ne sais pas si elle ont été réindexées ou pas. On peut voir la différence entre la changedate et le dateStamp.
Voici ce qui est effectué par FME pour l'édition de la date de révision de la donnée
Nous téléchargeons la fiche xml a. GET b. https://metawal.wallonie.be/geonetwork/srv/api/records/d594f5a3-34ac-4cc2-a357-aae5d5263f35/formatters/xml
Dans le xml reçu, nous mettons à jour la date de révision
Nous repostons la fiche xml mise à jour dans la transaction csw : a. POST b. https://metawal.wallonie.be/geonetwork/srv/fre/csw-publication c. <?xml version="1.0" encoding="UTF-8"?>
Testant le même scénario à la main
On récupére le datestamp du XML ici
https://github.com/geonetwork/core-geonetwork/blob/main/csw-server/src/main/java/org/fao/geonet/component/csw/Transaction.java#L351
On le sauve en base ici
https://github.com/geonetwork/core-geonetwork/blob/main/core/src/main/java/org/fao/geonet/kernel/XmlSerializer.java#L251-L255
Il n'y a pas eu de changement récent a priori.
Tout ça me semble normal et je ne vois pas ce qui aurait pu changer depuis. A priori, il n'y a pas de raison que GeoNetwork modifie la date de la fiche reçue lors de la transaction. Ca semble plutôt de la responsabilité de celui qui l'envoie - dans la spec OGC je vois rien qui dirait le contraire. On modifie le job FME ?
On modifie le job FME ?
oui, ça me parait logique que ce soit le job FME qui force la date de modification de la fiche. On part sur l'API ou on reste sur le CSW-T ?
Par contre sur la différence entre le dateStamp et la changeDate si on ouvre en édition et qu'on referme sans modif, tu as une idée ?
On part sur l'API ou on reste sur le CSW-T ?
CSW-T fonctionne bien. On peut rester comme ça.
Par contre sur la différence entre le dateStamp et la changeDate si on ouvre en édition et qu'on referme sans modif, tu as une idée ?
Je viens de tester edit + cancel et j'ai les bonnes dates:
Avant
"indexingDate": "2023-04-17T07:21:49.264Z",
"dateStamp": "2022-10-03T07:35:15.880Z",
"changeDate": "2022-10-03T07:35:15.88Z",
"createDate": "2023-04-14T13:32:39.362Z",
Après
"indexingDate": "2023-04-17T07:24:51.392Z",
"dateStamp": "2022-10-03T07:35:15.880Z",
"changeDate": "2022-10-03T07:35:15.88Z",
"createDate": "2023-04-14T13:32:39.362Z",
En consultant le doc dans ES: http://localhost:9200/gn-records/_doc/d594f5a3-34ac-4cc2-a357-aae5d5263f35
Pourrait éventuellement y'avoir un pb s'il ne pouvait pas récupérer le dateStamp de la fiche au début de la session d'édition mais a priori ca ne se produit pas. @vbombaerts tu pourrais retester et si tu observes le pb, indiquer l'UUID de la fiche?
Vérifier si les transactions CSW sont historisées.
Je confirme que les transactions CSW ne sont pas historisées. @vbombaerts on ajoute ?
Voici les fiches&_a=(columns:!(revisionDateForResource,changeDate,dateStamp,indexingDate,sc_metadataLink),filters:!(('$state':(store:appState),meta:(alias:!n,disabled:!f,field:revisionDateForResource,index:gn-records,key:revisionDateForResource,negate:!f,params:(gte:now-7d%2Fd,lt:now%2Fd),type:range),query:(range:(revisionDateForResource:(gte:now-7d%2Fd,lt:now%2Fd)))),('$state':(store:appState),meta:(alias:!n,disabled:!f,index:gn-records,key:isPublishedToAll,negate:!f,params:(query:true),type:phrase),query:(match_phrase:(isPublishedToAll:true)))),grid:(),hideChart:!f,index:gn-records,interval:auto,query:(language:kuery,query:''),sort:!(!(revisionDateForResource,desc)))) ouvertes en édition et directement refermées ce matin. La changeDate est OK mais pas le dateStamp.
Donc l'opération n'est pas edit + cancel mais open edit session + save and close.
Vérifier si les transactions CSW sont historisées.
Je confirme que les transactions CSW ne sont pas historisées. @vbombaerts on ajoute ?
oui
Donc l'opération n'est pas edit + cancel mais open edit session + save and close.
Donc c'est normal, si on "save and close", le dateStamp est mis à jour (sauf si "minor edit" est sélectionné normalement).
Donc l'opération n'est pas edit + cancel mais open edit session + save and close.
Donc c'est normal, si on "save and close", le dateStamp est mis à jour (sauf si "minor edit" est sélectionné normalement).
Sauf que le dateStamp n'est pas mis à jour. Uniquement le changeDate.
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40">
revisionDateForResource | changeDate | dateStamp | indexingDate | sc_metadataLink -- | -- | -- | -- | -- Apr 18, 2023 @ 00:00:00.000 | Apr 18, 2023 @ 09:59:08.980 | Apr 12, 2023 @ 09:13:18.411 | Apr 18, 2023 @ 09:59:09.860 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/cbd93a53-87d1-4f1a-8a7a-751bfc982325 Apr 18, 2023 @ 00:00:00.000 | Apr 18, 2023 @ 09:59:06.822 | Apr 12, 2023 @ 09:13:15.835 | Apr 18, 2023 @ 09:59:07.751 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/2998bccd-dae4-49fb-b6a5-867e6c37680f Apr 18, 2023 @ 00:00:00.000 | Apr 18, 2023 @ 09:59:04.559 | Apr 12, 2023 @ 09:50:21.231 | Apr 18, 2023 @ 09:59:05.625 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/91721175-5f01-410c-8c78-37c1d1893ba2 Apr 18, 2023 @ 00:00:00.000 | Apr 18, 2023 @ 09:59:02.559 | Apr 12, 2023 @ 09:55:03.546 | Apr 18, 2023 @ 11:51:07.638 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/c34743fa-7c50-4bfe-b587-e1253ff68eae Apr 17, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:28:26.192 | Apr 5, 2023 @ 10:30:23.047 | Apr 17, 2023 @ 08:28:27.428 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/e08bd187-c2e0-4c55-b262-226e0b27e486 Apr 17, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:30:06.121 | Apr 5, 2023 @ 10:30:44.310 | Apr 17, 2023 @ 08:30:07.604 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/f1ed4a9c-2d3f-4982-b3f8-42b4512d47f3 Apr 17, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:30:17.106 | Apr 12, 2023 @ 09:56:19.765 | Apr 17, 2023 @ 14:45:48.225 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/88f5f3ce-98f5-4ab3-b226-ad8a9692a339 Apr 17, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:30:10.828 | Apr 12, 2023 @ 09:14:19.314 | Apr 18, 2023 @ 10:57:41.967 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/ff71a317-fc05-4d0d-b30b-58a1740eb314 Apr 17, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:30:08.772 | Apr 5, 2023 @ 10:30:57.269 | Apr 18, 2023 @ 10:57:47.794 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/7db130d2-25b1-4a7f-b427-6b2463ae6633 Apr 16, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:30:19.233 | Apr 12, 2023 @ 10:00:08.851 | Apr 18, 2023 @ 07:02:08.205 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/ec2dc406-d28b-43db-a414-6f3da090b38b Apr 15, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 10:59:51.047 | Apr 17, 2023 @ 10:57:33.128 | Apr 18, 2023 @ 11:16:20.866 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/6d5020a8-aaae-41c7-b9e2-d3648594ec11 Apr 15, 2023 @ 00:00:00.000 | Apr 17, 2023 @ 08:30:24.448 | Apr 12, 2023 @ 10:00:42.146 | Apr 18, 2023 @ 12:13:30.790 | https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/b795de68-726c-4bdf-a62a-a42686aa5b6f
Sur certaines fiches, la date de dernière révision n'est pas mise à jour alors que la fiche a été éditée.
Exemple : https://metawal.wallonie.be/geonetwork/srv/fre/catalog.search#/metadata/cbd93a53-87d1-4f1a-8a7a-751bfc982325/formatters/xsl-view?root=div&view=advanced
Date de révision indiquée dans la fiche : 09/03/2023 (correspond au datestamp dans l'index) Date de révision indiquée dans le rapport sur les fiches modifiées : 05/04/2023 (correspond au changedate dans l'index) Une des conséquence est que le GP ne synchronise plus cette fiche (date de révision de la fiche inchangée)
Il s'agit d'une fiche qui est modifiée par une procédure automatique FME. J'ai demandé plus d'infos sur la procédure de mise à jour FME.
Je relie ce bug à la modification de config faite dans #812