Les commandes CLI CloudPools ne fournissent qu’un maximum de 100 000 éléments
Summary: La sortie des commandes CloudPools est limitée en raison d’une limitation de mémoire et de la disponibilité des paramètres appropriés sur l’interface de ligne de commande (CLI).
Symptoms
Certaines commandes CLI pour CloudPools sont susceptibles de renvoyer de nombreuses entrées. Par exemple :
isi cloud jobs files list <jobid>
La sortie de la commande ci-dessus peut contenir plusieurs fois plus de 100 000 éléments, en fonction du nombre de fichiers affectés par la tâche. Sans le correctif décrit, seules les 100 000 premières entrées sont répertoriées, sauf si un appel d’API de plate-forme (PAPI) est effectué directement.
Cause
La raison en est que le gestionnaire PAPI a été modifié pour gérer les paramètres de lot et de page, et peut répertorier les entrées après 100 000. Toutefois, les paramètres pour ce faire n’ont pas été implémentés dans la CLI. Le correctif ajoute des paramètres batch et page à l’interface de ligne de commande.
Resolution
Cette limitation est corrigée dans OneFS v8.0.0.7 et versions ultérieures.
Avec le correctif, les paramètres batch, limit et page doivent être spécifiés ensemble afin que la commande CLI produise les résultats escomptés.
Par exemple :
# isi cloud jobs files list --job-id=49 --verbose --batch=1 --limit=100000 --page=1 # isi cloud jobs files list --job-id=49 --verbose --batch=1 --limit=100000 --page=2 # isi cloud jobs files list --job-id=49 --verbose --batch=1 --limit=100000 --page=3 ...
Additional Information
Pour contourner ce problème, avant la mise en œuvre du correctif, les appels PAPI peuvent être effectués directement à l’aide de cURL. Voici un exemple de syntaxe :
# curl -u root:a -H "Content-type: application/json" 'https://100.77.1.231:8080/platform/3/cloud/jobs-files/4?batch=1&limit=100000&page=1' -k > /ifs/data/Isilon_Support/job49_filelist_page1 # curl -u root:a -H "Content-type: application/json" 'https://100.77.1.231:8080/platform/3/cloud/jobs-files/4?batch=1&limit=100000&page=2' -k > /ifs/data/Isilon_Support/job49_filelist_page2 # curl -u root:a -H "Content-type: application/json" 'https://100.77.1.231:8080/platform/3/cloud/jobs-files/4?batch=1&limit=100000&page=3' -k > /ifs/data/Isilon_Support/job49_filelist_page3