Получите ошибку циклической ссылки от AWS S3. Выберите запрос, используя s3api, для подсчета строк в файле в S3. - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь подсчитать количество строк в файле, хранящемся в корзине S3, используя AWS SELECT . В частности, выполнение следующей команды (на основе документации AWS s3api и этого примера Java для запроса count (*) ):

aws s3api select-object-content --bucket my_bucket_name --key my_file_name --expression "select count(*) from S3object s" --expression-type SQL --input-serialization CSV={}  --output-serialization CSV={}

Вышеуказанное возвращает:

{
    "Payload":
Circular reference detected

Несмотря на то, что настройки по умолчанию работают для моего варианта использования, я попытался предоставить дополнительную информацию с параметрами CSV={} в командной строке, а также попробовал альтернативный синтаксис JSON '{"CSV":{}}'. Всегда получайте ошибку Circular reference detected.

Файл существует в корзине; в противном случае вы получите ошибку NoSuchKey. Да, был там, сделал это ...:)

Примеры для AWS SELECT либо редки, либо мой Google-fu меня подводит.

Предложения? Альтернативы приветствуются, но они должны быть в сценариях.

1 Ответ

0 голосов
/ 02 августа 2019

Не уверен, если кто-то все еще сталкивается с ошибкой - обновление awscli помогло в моем случае - pip3 install awscli --upgrade

...