Closed aferchal closed 2 years ago
Salut, j'ai testé la route qui renvoie les taxons et ta liste 100 et elle est OK et renvoie bien 25575 taxons : https://geonature.guadeloupe-parcnational.fr/taxhub/api/taxref/allnamebylist/100?limit=50000
Ta configuration me semble bonne aussi.
Le paramètre page_max_retry
a été supprimé depuis la version 1.2.0, donc il n'a plus d'effet.
Le module de synchronisation va boucler sur la route en récupérant à chaque fois autant de résultats qu'indiqué par le paramètre page_size
et quand il ne trouve plus de résultats, s'arrêter.
Il y a un soucis avec la pagination des routes dans TaxHub qui a été réglé dans sa version 1.9.4 qui faisait qu'il pouvait manquer certains taxons : https://github.com/PnX-SI/TaxHub/releases
Mais cela n'explique pas ton soucis, qui n'est jamais remonté à ma connaissance.
Ce que je comprends de l'erreur (sans certitude), c'est que l'application plante car le terminal sature. Ou alors c'est le TaxHub qui sature et n'arrive plus à répondre ?
Essaie peut-être de mettre une plus grosse valeur au paramètre page_size
, genre 30000 (supérieur au nombre d'objets renvoyés par la route, pour tous les récupérer en une fois), ou au contraire mettre une petite valeur comme 200
pour faire plein de petits appels à la route, plutôt qu'un seul gros appel, pour voir si la synchronisation arrive au bout ?
Bonjour
Merci pour ta réponse. J'ai supprimé le page_max_retry
et testé avec les 2 paramètres pour le page_size
avec un bas genre 200
et un haut genre 30000
.
Le résultat est le même : failed because it threw an exception/error
Soit il faut réduire le nombre de taxons dans le taxhub, soit il faut que le BRGM mette à jour l'appli pour sen sortir
OK. On a déjà testé avec plus de taxons, et la mise à jour de TaxHub réglera les listes de taxons incomplètes mais ne devrait rien changer à ton soucis où le chargement des taxons plante.
Ma compréhension (sans grande compétence sur le sujet) c'est le terminal qui mouline et arrive pas au bout de la synchronisation. Peut-être qu'il manque de ressources ?
j'ai essayé avec plusieurs terminaux récents, en Android 10 et 11 et le résultat est le même. Je vais tester en réduisant le nombre de taxons dans la liste.
Ouais ou alors créé une liste bidon avec 10 taxons pour voir...
Bonjour,
J'ai fais une passe rapide sur votre instance, notamment en appelant manuellement la route utilisée par "Occtax" lors de la synchronisation des taxons (/api/taxref/allnamebylist/100
) et j'ai trouvé un taxon qui peut poser problème :
{
"cd_nom": 349525,
"search_name": "Biota = <i> Biota Endl.(D.Don)</i> - [Dumm - 349525]",
"cd_ref": 349525,
"nom_valide": "Biota Endl.(D.Don)",
"lb_nom": "Biota",
"nom_vern": null,
"regne": null,
"group2_inpn": "Autres"
}
où les informations sur la taxonomie est incomplète (attribut regne
ayant une valeur nulle). Coté application ces informations sont considérés comme obligatoires, notamment pour cataloguer et pouvoir appliquer des filtres sur la liste des taxons.
Le problème reste identique sur la v2 de "Occtax" où il n'y a pas de contrôle de fait sur ce point là.
Coté application, je peux donc durcir les contrôles et écarter lors de la synchronisation tout taxon considéré comme non valide, et en attendant, soit vous appliquez une correction en base sur ce taxon, soit vous le supprimez.
OK ça devient plus clair, en effet. Merci d'avoir regardé.
En effet, il serait utile d'ignorer les données qui posent soucis, plutôt que de planter le téléchargement de la liste.
Merci.
Bien vu @sgrimault !! J'ai supprimé ce taxon est la synchro fonctionne. Du même avis que Camille même si une fois qu'on le sait ça va plus vite pour l'identification du pb. Merci à vous.
Idéalement, il est peut-être faisable qu'un taxon soit récupéré même si il n'a pas de règne ou de group2inpn (même si ce n'est pas censé arriver à ma connaissance) ?
PS : Alain, tu peux aussi ajouter un règne à ce taxon.
Oui il faudrait que la synchro continue en ignorant le taxon qui provoque l'erreur. Est-ce qu'il est possible ausi d'avoir des logs un peu plus verbeux ?
04-22 17:09:44.875 4671 4723 E WM-WorkerWrapper: Work [ id=5479a36a-1827-4697-a8e9-476920483553, tags={ fr.geonature.sync.sync.worker.DataSyncWorker, data_sync_worker_tag } ] failed because it threw an exception/error
Là on voit qu'une erreur est levée, mais on ne sait pas laquelle
C'est un cas qui ne devrait jamais arriver car ça carrément fait planter le worker dédié à la synchronisation des données.
Je vais donc réactiver la validation stricte sur les taxons reçus et ne garder que ceux qui sont valides. Ceux qui ne passent pas cette validation seront tracés pour faciliter l'analyse si jamais on constate des écarts entre les taxons présents coté GeoNature et ceux présents localement coté "Occtax".
Suite à une mise à jour massive en base des taxons dans la table
taxonomie.bib_nom
et mise à jour de la liste du jdd occtax de la tabletaxonomie.cor_nom_liste
il y a une semaine, soit un total de 23751 taxons je n'avais pas fait de synchro sur le mobile. J'ai installé hier GN mobile sur les terminaux de nouveaux agents et je me suis retrouvé face à un pb de synchro des taxons avec aucun taxon qui ne remonte.Les anciennes install sont restées bloquées à une date antérieure. Version GN : 2.6.2 (BRGM) Version TH : 1.9.1 ? (BRGM) Android 10 (Crosscall X4) Sync : 1.3.0 Occtax : 1.3.0 (testé en 1.3.1)
Ci dessous le json :
Ci dessous un extrait du log avec un retour d'erreur indiqué :
J'ai lu pas mal de tickets sur les config du
page_size
etpage_max_retry
, mais testé pas mal de valeurs mais pas mieux.Merci.