For some reason, I’m getting this error when trying to connect to the twitter api using the python sdk.
It’s been working before, not sure what make this stop working.
This is the full stack trace.
ERROR:celery.app.trace:Task my_app.tasks.tasks.do[54ee5dfc-a4e4-44e5-86f0-6bd30d691ccd] raised unexpected: RecursionError('maximum recursion depth exceeded while calling a Python object',)
Traceback (most recent call last):
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/celery/app/trace.py", line 382, in trace_task
R = retval = fun(*args, **kwargs)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/my_app/tasks/tasks.py", line 97, in do
result = modules_service.run(module_name, json_input)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/my_app/service/services.py", line 35, in run
return function(input_params)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/my_app/modules/fetcher/media_fetcher.py", line 61, in execute
return run_twitter_fetcher(collection_name, params)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/my_app/modules/fetcher/media_fetcher.py", line 99, in run_twitter_fetcher
rows = run_generic_fetcher(tw, params)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/my_app/modules/fetcher/media_fetcher.py", line 248, in run_generic_fetcher
data = adapter.fetch(params)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/my_app/modules/fetcher/adapters/twitter.py", line 92, in fetch
self.account = self.client.accounts(id=_params.get('account_id'))
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/twitter_ads/client.py", line 94, in accounts
return Account.load(self, id) if id else Account.all(self)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/twitter_ads/account.py", line 48, in load
response = Request(client, 'get', resource, params=kwargs).perform()
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/twitter_ads/http.py", line 67, in perform
response = self.__oauth_request()
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/twitter_ads/http.py", line 104, in __oauth_request
files=files, stream=stream)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/requests/sessions.py", line 546, in get
return self.request('GET', url, **kwargs)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/requests/sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/requests/adapters.py", line 449, in send
timeout=timeout
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/urllib3/connectionpool.py", line 600, in urlopen
chunked=chunked)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/urllib3/connectionpool.py", line 343, in _make_request
self._validate_conn(conn)
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/urllib3/connectionpool.py", line 839, in _validate_conn
conn.connect()
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/urllib3/connection.py", line 332, in connect
cert_reqs=resolve_cert_reqs(self.cert_reqs),
File "/Users/my_user/workspace/my_app/my_app_platform/my_app-engine/env/lib/python3.6/site-packages/urllib3/util/ssl_.py", line 281, in create_urllib3_context
context.options |= options
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 465, in options
super(SSLContext, SSLContext).options.__set__(self, value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 465, in options
super(SSLContext, SSLContext).options.__set__(self, value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 465, in options
super(SSLContext, SSLContext).options.__set__(self, value)
[Previous line repeated 104 more times]
File "...", line -1, in [rest of traceback truncated]
RecursionError: maximum recursion depth exceeded while calling a Python object
My script is running in a celery worker, my app is monkey_patched as early as possible, and it’s been working so far.
Any ideas?