Maximum de 10000 membres quand on interroge la base de données de Cesium+

Pour pouvoir trouver des membres, avoir une liste de comptes membres ou non, qui peuvent ensuite se trier par critères, j’ai utilisé ce type de lien (bon on m’a un donné ce tuyau et un peu expliqué):
https://g1.data.duniter.fr/user/profile/_search?from=10000&size=100

Ici il est volontairement calé à 10000 plus 100, endroit à partir de lequel il ne marche plus.
Ça dit:

error	
root_cause	
0	
type	"query_phase_execution_exception"
reason	"Result window is too large, from + size must be less than or equal to: [10000] but was [10100]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter."
type	"search_phase_execution_exception"
reason	"all shards failed"
phase	"query"
grouped	true
failed_shards	
0	
shard	0
index	"user"
node	"WSYegiRkSz-Jpf1gffKsHw"
reason	
type	"query_phase_execution_exception"
reason	"Result window is too large, from + size must be less than or equal to: [10000] but was [10100]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter."
status	500

Du coup comment faut-il faire pour avoir la liste complète des membres sans buter sur cette limite?

Bienvenue @hypericum !

Result window is too large, from + size must be less than or equal to: [10000] but was [10100]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter."

Vous faîtes une requête sur le serveur Elasticsearch de Cesium+. Le message d’erreur vous conseille d’utiliser les fonctions de scrolling :

Ce n’est pas un bug Cesium+ ni Cesium. Il faut juste apprendre l’api Elasticsearch… :wink:

2 Likes

Et attention avec cette API, le noeud g1.data.duniter.fr n’est, par exemple, pas parfaitement synchronisé, certaines entrées/sorties de membres ne sont pas retournées, certains montants sont également incorrectes (exemple : Croissance (c) éclaircissements?)

2 Likes

D’accord, je transmets à la personne qui sait!

Je ne comprends pas tout.

Je cherche à explorer les données de la toile de confiance via Cesium+, je maîtrise pas l’API de elasticsearch.

Quand je requête sur

localhost:9200/wot/members

J’ai un problème similaire à @hypericum

Result window is too large, from + size must be less than or equal to: [10000] but was [10500]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter.

J’ai essayé de réduire la taille de la fenêtre de recherche :

http://localhost:9200/wot/members/_search?size=250
http://localhost:9200/wot/members/_search?scroll=1m

J’ai systématiquement des erreurs de type 403.
Si quelqu’un à une piste je suis preneur.

Peut-être qu’il y a d’autres méthodes pour récupérer les données ?

Ici je requête Césium+ avec scrolling : (vers ligne 125)