Closed JeffBolle closed 2 years ago
Thanks for the report, we may need to adapt the code to accommodate:
https://stackoverflow.com/questions/23429499/stdout-buffer-issue-using-node-child-process
Here's a link to the command itself: https://github.com/pelias/openaddresses/blob/1b60e9725db90a6e319fb82e4efc310a809eaf81/utils/download_all.js#L46
It's using cp
which shouldn't output the bytes to stdio, I'm not super familiar with that command when using requester-payer, is it potentially very verbose at logging by default?
The docs suggest the flags should be --request-payer requester
, does that resolve the issue?
Agh so, by default it displays a progress dialog, you can disable it with a command like this:
aws s3 cp \
s3://data.openaddresses.io/openaddr-collected-global.zip /tmp/openaddr-collected-global.zip \
--request-payer requester \
--no-progress
So you should be able to proceed without any code changes with:
"s3Options": "--request-payer requester --no-progress"
As a more permanent fix we can either:
--no-progress
by default, spawn
instead of exec
so the user can actually see the stream of stdout
before it exitsplease test the pull request and let us know how you get on:
When attempting to download the OpenAddresses information via S3 with requestor pays, per the following config:
The download starts, but errors out after a short amount of time with the following error:
I'm able to separately download the openaddresses files using the s3 client on the box and extract the contents.
Steps to Reproduce Standard Pelias build. git pull, pelias compose pull, etc. Modify pelias.json to have an S3 config for the OpenAddresses data. run
pelias download oa
Expected behavior
Environment (please complete the following information):
Pastebin/Screenshots
Additional context
References