Wait for slow upstream services and report proper error instead of UnknownError
I think Microsoft Graph should change the way it handles slow upstream services. We use the Sharepoint/OneDrive API heavily and we often get an "UnknownError" after 10/20/30 seconds depending on what operation we perform. This happens because MS Graph doesn't wait more than a predefined period of time for the Sharepoint service to respond, and when Sharepoint is overloaded (which happens a lot for various tenants), it takes more than 10/20/30 seconds to respond, but keeps working though. An "UnknownError" is then returned to the calling code, Sharepoint continues to upload a file, but we try again due to error, and this results in multiple files, which is a mess.
I would suggest that the MS Graph wait for the upstream service to timeout/fail, and report a more proper error to the calling code, if we are ever going to be able to handle those situatuations.
This issue is not limited to Sharepoint, but also the Exchange/Outlook part, it also returns "UnknownError"