Los comandos de la CLI de CloudPools solo proporcionan un máximo de 100 000 elementos
Summary: La salida de comandos de CloudPools está limitada debido a una limitación de memoria y a la disponibilidad de los parámetros adecuados en la interfaz de línea de comandos (CLI).
Symptoms
Algunos de los comandos de la CLI para CloudPools tienen el potencial de devolver muchas entradas. Por ejemplo:
isi cloud jobs files list <jobid>
El resultado del comando anterior puede tener varias veces más de 100 000 elementos, según la cantidad de archivos afectados por el trabajo. Sin la corrección descrita, solo se enumeran las primeras 100 000 entradas, a menos que se realice directamente una llamada a la API de plataforma (PAPI).
Cause
El motivo de esto es que el controlador PAPI se modificó para manejar los parámetros de lote y página, y puede enumerar entradas posteriores a 100 000. Sin embargo, los parámetros para hacerlo no se implementaron en la CLI. La corrección agrega parámetros de lote y página a la CLI.
Resolution
Esta limitación se corrigió en OneFS v8.0.0.7 y versiones posteriores.
Con la corrección, los parámetros batch, limit y page se deben especificar juntos para que el comando de la CLI genere los resultados deseados.
Por ejemplo:
# 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
Como solución alternativa, antes de que se implemente la corrección, las llamadas PAPI se pueden realizar directamente mediante cURL. Un ejemplo de sintaxis sería:
# 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