decentraland / unity-explorer

Apache License 2.0
10 stars 11 forks source link

System.Exception: Exception occured on loading ECS.StreamableLoading.Textures.Texture2DData from ECS.StreamableLoad... #2764

Open sentry-io[bot] opened 3 weeks ago

sentry-io[bot] commented 3 weeks ago

The flow:

Sentry Issue: [UNITY-EXPLORER-4K8] (https://decentraland.sentry.io/issues/5929284631/?referrer=github_integration)

Cysharp.Threading.Tasks.UnityWebRequestException: Data Processing Error, see Download Handler error
  Module "Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1", in GetResult
  Module "Cysharp.Threading.Tasks.UnityAsyncExtensions+UnityWebRequestAsyncOperationConfiguredSource", in GetResult
  Module "DCL.WebRequests.Analytics.WebRequestsAnalyticsExtensions+<WithAnalyticsAsync>d__0`1", in MoveNext
  Module "Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1", in Run
  Module "Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1", in TrySetException
...
(201 additional frame(s) were not displayed)

System.Exception: Exception occured on loading ECS.StreamableLoading.Textures.Texture2DData from ECS.StreamableLoading.NFTShapes.GetNFTShapeIntention with url https://opensea.decentraland.org/api/v2/chain/ethereum/contract/0x7fdcd2a1e52f10c28cb7732f46393e297ecadda1/nfts/23221.
No more sources left.
NickKhalow commented 1 day ago

@m3taphysics Current design of GetTextureWebRequest is supposed to return Texture or Exception only. There is no option to provide "Soft" return result without throwing an error. I'd propose to consider EnumResult to distinguish different cases

NickKhalow commented 1 day ago

Original error is gone. Now it seems like:

Exception: CreateTextureOp: Error loading texture url: https://hd-res.alfakingdom.com/normal/23221.svg - EnumResult<IOwnedTexture2D, ImageResult>: Error: ErrorUnknownImageFormat - 
DCL.WebRequests.GetTextureWebRequest+CreateTextureOp.ExecuteAsync (DCL.WebRequests.GetTextureWebRequest webRequest, System.Threading.CancellationToken ct) (at Assets/DCL/WebRequests/Texture/GetTextureWebRequest.cs:73)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1[TResult].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:244)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`2[TStateMachine,T].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:342)
Cysharp.Threading.Tasks.UniTask`1+Awaiter[T].GetResult () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:653)
DCL.WebRequests.WebRequestController.SendAsync[TWebRequest,TWebRequestArgs,TWebRequestOp,TResult] (DCL.WebRequests.RequestEnvelope`2[TWebRequest,TWebRequestArgs] envelope, TWebRequestOp op) (at Assets/DCL/WebRequests/WebRequestController.cs:49)
DCL.WebRequests.WebRequestController.SendAsync[TWebRequest,TWebRequestArgs,TWebRequestOp,TResult] (DCL.WebRequests.RequestEnvelope`2[TWebRequest,TWebRequestArgs] envelope, TWebRequestOp op) (at Assets/DCL/WebRequests/WebRequestController.cs:85)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1[TResult].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:244)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`2[TStateMachine,T].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:342)
Cysharp.Threading.Tasks.UniTask`1+Awaiter[T].GetResult () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:653)
DCL.WebRequests.DebugMetricsWebRequestController.SendAsync[TWebRequest,TWebRequestArgs,TWebRequestOp,TResult] (DCL.WebRequests.RequestEnvelope`2[TWebRequest,TWebRequestArgs] envelope, TWebRequestOp op) (at Assets/DCL/WebRequests/DebugMetricsWebRequestController.cs:34)
NickKhalow commented 16 hours ago

@mikhail-dcl WDYT? https://github.com/decentraland/unity-explorer/issues/2764#issuecomment-2514793696