S1-Tilling error - Docker Linux subsystem

Hello,

I’m getting an error runing the docker image:

After sending the request it says that there are no products. Can someone explain me this error?

INFO - Sending count request: https://peps.cnes.fr/resto/api/collections/S1/search.json?polarisation=VV VH&sensorMode=IW&orbitDirection=descending&startDate=2023-01-01&completionDate=2023-05-01&geometry=POLYGON ((-9.0002 39.6546, -9.0002 40.6509, -7.7017 40.6509, -7.7017 39.6546, -9.0002 39.6546))&productType=GRD&maxRecords=1&page=1
ERROR - Skipping error while counting results for peps QueryStringSearch instance:
Traceback (most recent call last):
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 449, in _make_request
six.raise_from(e, None)
File “”, line 3, in raise_from
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 444, in _make_request
httplib_response = conn.getresponse()
File “/usr/lib/python3.8/http/client.py”, line 1348, in getresponse
response.begin()
File “/usr/lib/python3.8/http/client.py”, line 316, in begin
version, status, reason = self._read_status()
File “/usr/lib/python3.8/http/client.py”, line 277, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), “iso-8859-1”)
File “/usr/lib/python3.8/socket.py”, line 669, in readinto
return self._sock.recv_into(b)
File “/usr/lib/python3.8/ssl.py”, line 1241, in recv_into
return self.read(nbytes, buffer)
File “/usr/lib/python3.8/ssl.py”, line 1099, in read
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/requests/adapters.py”, line 489, in send
resp = conn.urlopen(
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 787, in urlopen
retries = retries.increment(
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/util/retry.py”, line 550, in increment
raise six.reraise(type(error), error, _stacktrace)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/packages/six.py”, line 770, in reraise
raise value
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 703, in urlopen
httplib_response = self._make_request(
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 451, in _make_request
self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 340, in _raise_timeout
raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host=‘peps.cnes.fr’, port=443): Read timed out. (read timeout=5)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/eodag/plugins/search/qssearch.py”, line 864, in _request
response = requests.get(url, timeout=HTTP_REQ_TIMEOUT, **kwargs)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/requests/api.py”, line 73, in get
return request(“get”, url, params=params, **kwargs)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/requests/api.py”, line 59, in request
return session.request(method=method, url=url, **kwargs)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/requests/sessions.py”, line 587, in request
resp = self.send(prep, **send_kwargs)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/requests/sessions.py”, line 701, in send
r = adapter.send(request, **kwargs)
File “/tmp/S1TilingEnv/lib/python3.8/site-packages/requests/adapters.py”, line 578, in send
raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host=‘peps.cnes.fr’, port=443): Read timed out. (read timeout=5)
INFO - 0 remote S1 products returned in page 1: []
DEBUG - 0 remote S1 products found: []
INFO - 0 remote S1 product(s) found and filtered (IW && VV VH && descending orbit): []
INFO - 0 remote S1 product(s) will be downloaded
INFO - Downloading images related to 29TNE took 10.57021259999965sec
DEBUG - Test intersections of 29TNE
DEBUG - 0 products remaining after clearing out download failures: []
DEBUG - 0 products found to intersect 29TNE: []
INFO - Intersecting raster list w/ 29TNE took 1.9411935999996786sec
INFO - No intersection with tile 29TNE
INFO - Processing of tile 29TNE took 12.513326500000403sec
DEBUG - #############################################################################
INFO - Execution report: no error detected
INFO - → Nothing has been executed
DEBUG - Situation: 0 computations errors. 0 download failures. 0 download timeouts
INFO - Stopping worker at tcp://127.0.0.1:34323. Reason: nanny-close
2023-05-04 09:43:23,106 - distributed.worker - INFO - Stopping worker at tcp://127.0.0.1:34323. Reason: nanny-close
INFO - Stopping worker at tcp://127.0.0.1:36781. Reason: nanny-close
2023-05-04 09:43:23,107 - distributed.worker - INFO - Stopping worker at tcp://127.0.0.1:36781. Reason: nanny-close
INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-b7b99c50-0a8e-4d02-8ca4-5dbf4b2b72b1 Address tcp://127.0.0.1:34323 Status: Status.closing
2023-05-04 09:43:23,108 - distributed.worker - INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-b7b99c50-0a8e-4d02-8ca4-5dbf4b2b72b1 Address tcp://127.0.0.1:34323 Status: Status.closing
DEBUG - Attempted to close worker that is already Status.closing. Reason: worker-handle-scheduler-connection-broken
INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-c7bfcc03-ed1a-4c7f-b718-d8aef5c95c1b Address tcp://127.0.0.1:36781 Status: Status.closing
2023-05-04 09:43:23,109 - distributed.worker - INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-c7bfcc03-ed1a-4c7f-b718-d8aef5c95c1b Address tcp://127.0.0.1:36781 Status: Status.closing
DEBUG - Attempted to close worker that is already Status.closing. Reason: worker-handle-scheduler-connection-broken
DEBUG - Cleaning temporary SRTM diretory (<TemporaryDirectory ‘/data/tmpbve8ymrq’>)

Now it is not giving the error but another one related to the credentials:

INFO - - Download failure: s1a_29TNE_*_DES_125_20230430txxxxxx.tif cannot be produced because of the following issues with the inputs: [Failed to produce EOProduct(id=S1A_IW_GRDH_1SDV_20230430T064308_20230430T064333_048322_05CFC0_5AE7, provider=peps): The following credentials are missing for provider peps: username, password]
DEBUG - Situation: 0 computations errors. 60 download failures. 0 download timeouts
INFO - Stopping worker at tcp://127.0.0.1:42429. Reason: nanny-close
2023-05-04 14:51:39,710 - distributed.worker - INFO - Stopping worker at tcp://127.0.0.1:42429. Reason: nanny-close
INFO - Stopping worker at tcp://127.0.0.1:44555. Reason: nanny-close
2023-05-04 14:51:39,711 - distributed.worker - INFO - Stopping worker at tcp://127.0.0.1:44555. Reason: nanny-close
INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-6e98a58b-4a1f-471e-98c7-8318ac7d6873 Address tcp://127.0.0.1:42429 Status: Status.closing
2023-05-04 14:51:39,711 - distributed.worker - INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-6e98a58b-4a1f-471e-98c7-8318ac7d6873 Address tcp://127.0.0.1:42429 Status: Status.closing
DEBUG - Attempted to close worker that is already Status.closing. Reason: worker-handle-scheduler-connection-broken
INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-ea3addfc-6446-45a1-bb39-fe9762858fc1 Address tcp://127.0.0.1:44555 Status: Status.closing
2023-05-04 14:51:39,712 - distributed.worker - INFO - Connection to scheduler broken. Closing without reporting. ID: Worker-ea3addfc-6446-45a1-bb39-fe9762858fc1 Address tcp://127.0.0.1:44555 Status: Status.closing
DEBUG - Attempted to close worker that is already Status.closing. Reason: worker-handle-scheduler-connection-broken
DEBUG - Cleaning temporary SRTM diretory (<TemporaryDirectory ‘/data/tmpv1kovhuw’>)

Hello,

Have you defined the EODAG configuration file for the credential and have S1Tiling request file points to the right file (through DataSource.eodagConfig option)?

Also the path shall be expressed according the docker point of view. IOW, if you map the path in which the eodag configuration file (let’s say: $HOME/.config/eodag) to something like /eoconfig (in docker space), then you need to also set eodagConfig to the right pathname. See Installation — S1Tiling 1.0.0rc1 documentation

(and I see the documentation/code needs to be updated to use either eodag_config or eodagConfig – so far, this is the working one, I may harmonize it to snake_case in the upcoming V1.0 version)

Hi Luc,

First of all, thank you very much for your answer.

I have discovered the source of the problem. As I mentioned earlier. I was using the Linux subsystems, and it turns out that regular users don’t have permission to access the default folder in the default docker run command. Consequently, even though it was the correct folder, Docker was unable to access the file. I attempted to use the chmod and chown commands, but I was unsuccessful in changing the folder permissions. I believe this may be a constraint related to the subsystem.

Solution: I moved the file to another folder where I was able to change the permissions successfully. Then, I modified the docker run command to locate the file within the specific folder.

Hi
Couldn’t it be solved with --user option when running the docker?

(I’m not a docker specialist, but it sounds like a good start to solve permission issues)