adobe-apiplatform / user-sync.py

Application for synchronizing Adobe customer directories via the User Management API
https://adobe-apiplatform.github.io/user-sync.py/en/user-manual/
MIT License
87 stars 67 forks source link

Dealing TimeoutExceptions when extracting accounts from Sign #833

Closed Luci2015 closed 1 month ago

Luci2015 commented 9 months ago

Description If TimeoutException is raised during Sign sync, this is the error may be obtained:

"2023-11-21 11:32:39 6616 ERROR asyncio - Task exception was never retrieved
future: <Task finished name='Task-442' coro=<SignClient._get_user() done, defined at sign_client\client.py:261> exception=TypeError('super(type, obj): obj must be an instance or subtype of type')>
Traceback (most recent call last):
  File "sign_client\client.py", line 266, in _get_user
  File "sign_client\client.py", line 336, in call_with_retry_async
  File "sign_client\error.py", line 36, in __init__
TypeError: super(type, obj): obj must be an instance or subtype of type
2023-11-21 11:32:39 6616 ERROR asyncio - Task exception was never retrieved
future: <Task finished name='Task-443' coro=<SignClient._get_user() done, defined at sign_client\client.py:261> exception=TypeError('super(type, obj): obj must be an instance or subtype of type')>

Steps to reproduce -> in the wild, it has to be raised by a >=500 or 429 error received from Sign API, but locally the error.py in sign_client can be used for testing and force a raise of TimeoutException

Expected behavior retry should happen for failed attempts, based on the described except branch

Environment