Bug #20611
Updated by Peter Amstutz 11 months ago
Simple python script
Without "api = arvados.api()" it works fine
With that added, it apparently hangs. Example:
https://workbench2.scale.arvadosapi.com/processes/scale-xvhdp-f9kur2tybompfb1
Also
<pre>
Traceback (most recent call last):
File "/home/peter/work/arvados/sdk/cwl/arvados_cwl/arvcontainer.py", line 502, in done
"%s (%s) error log:" % (label, record["uuid"]), maxlen=40, include_crunchrun=(rcode is None or rcode > 127))
UnboundLocalError: local variable 'rcode' referenced before assignment
</pre>
Here's the dumb little script I'm using
<pre>
import time
import sys
ticks = int(sys.argv[1])
print("ticking %s times" % ticks, flush=True)
import logging
logging.getLogger('googleapiclient').setLevel(logging.DEBUG)
import arvados
print("imported", flush=True)
api = arvados.api()
print("api'd", flush=True)
for i in range(1, ticks+1):
time.sleep(10)
print("tick %s / %s" % (i, ticks), flush=True)
print("done", flush=True)
</pre>
The last thing it prints is "imported" so we know the import works but getting an API object does not.
Update, set num_retries=0, DNS lookup is failing:
<pre>
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/safeapi.py", line 63, in localapi
2023-06-05T22:37:54.507877037Z stderr client = self.local.api
2023-06-05T22:37:54.507877037Z stderr AttributeError: '_thread._local' object has no attribute 'api'
2023-06-05T22:37:54.507877037Z stderr
2023-06-05T22:37:54.507877037Z stderr During handling of the above exception, another exception occurred:
2023-06-05T22:37:54.507877037Z stderr
2023-06-05T22:37:54.507877037Z stderr Traceback (most recent call last):
2023-06-05T22:37:54.507877037Z stderr File "/keep/da8dcd92f2b8ab2860005f51fcabdf46+53/idle.py", line 19, in <module>
2023-06-05T22:37:54.507877037Z stderr api = arvados.api(num_retries=0)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/api.py", line 431, in api
2023-06-05T22:37:54.507877037Z stderr return ThreadSafeApiCache({}, {}, kwargs, version)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/safeapi.py", line 59, in __init__
2023-06-05T22:37:54.507877037Z stderr self.keep = keep.KeepClient(api_client=self, **keep_params)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/keep.py", line 913, in __init__
2023-06-05T22:37:54.507877037Z stderr self.insecure = api_client.insecure
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/safeapi.py", line 72, in __getattr__
2023-06-05T22:37:54.507877037Z stderr return getattr(self.localapi(), name)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/safeapi.py", line 65, in localapi
2023-06-05T22:37:54.507877037Z stderr client = api.api_client(**self._api_kwargs)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/api.py", line 261, in api_client
2023-06-05T22:37:54.507877037Z stderr **kwargs,
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
2023-06-05T22:37:54.507877037Z stderr return wrapped(*args, **kwargs)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/discovery.py", line 296, in build
2023-06-05T22:37:54.507877037Z stderr static_discovery=static_discovery,
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/discovery.py", line 422, in _retrieve_discovery_doc
2023-06-05T22:37:54.507877037Z stderr resp, content = req.execute(num_retries=num_retries)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
2023-06-05T22:37:54.507877037Z stderr return wrapped(*args, **kwargs)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/http.py", line 932, in execute
2023-06-05T22:37:54.507877037Z stderr headers=self.headers,
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/api.py", line 87, in _retry_request
2023-06-05T22:37:54.507877037Z stderr response, body = _orig_retry_request(http, num_retries, *args, **kwargs)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/http.py", line 222, in _retry_request
2023-06-05T22:37:54.507877037Z stderr raise exception
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/googleapiclient/http.py", line 191, in _retry_request
2023-06-05T22:37:54.507877037Z stderr resp, content = http.request(uri, method, *args, **kwargs)
2023-06-05T22:37:54.507877037Z stderr File "/usr/share/python3/dist/python3-arvados-cwl-runner/lib/python3.7/site-packages/arvados/api.py", line 132, in _intercept_http_request
2023-06-05T22:37:54.507877037Z stderr raise type(e)(*e.args)
2023-06-05T22:37:54.507877037Z stderr httplib2.error.ServerNotFoundError: [req-89hr1neqwdmaksp8hzhj] Unable to find the server at scale.arvadosapi.com
</pre>