Blazor.Diagrams icon indicating copy to clipboard operation
Blazor.Diagrams copied to clipboard

BUG: Z.Blazor.Diagram crashes (whole application) when you are scrolling too much or too long

Open HugoVG opened this issue 2 years ago • 6 comments

Steps to reproduce:

  • scroll, a lot
  • Tested on big canvas and is much more likely to crash
  • on canvases with not as much nodes it is harder it triggers when there are nodes not visible inside the div/view.
Module._mono_wasm_invoke_method@https://blazor-diagrams.zhaytam.com/_framework/wasm/dotnet.3.2.0.js:1:195738 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
call_method@https://blazor-diagrams.zhaytam.com/_framework/wasm/dotnet.3.2.0.js:1:160823 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
bind_static_method/<@https://blazor-diagrams.zhaytam.com/_framework/wasm/dotnet.3.2.0.js:1:163094 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
beginInvokeDotNetFromJS@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:41357 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
s@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:8562 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
e.invokeMethodAsync@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:9641 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
v/</</<@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:34635 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
t.dispatchEvent@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:11187 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
e/this.eventDelegator</<@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:12101 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
e/this.eventDelegator<@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:12125 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
e.prototype.onGlobalEvent@https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js:1:22181 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
<empty string> [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading.Tasks.ValueTask`1[TResult].get_Result () <0x21b37f0 + 0x0002c> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync (Microsoft.JSInterop.IJSRuntime jsRuntime, System.String identifier, System.Object[] args) <0x2135260 + 0x000e4> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at Blazor.Diagrams.Extensions.JSRuntimeExtensions.UnobserveResizes (Microsoft.JSInterop.IJSRuntime jsRuntime, Microsoft.AspNetCore.Components.ElementReference element) <0x244b6d0 + 0x000ee> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at Blazor.Diagrams.Components.Renderers.NodeRenderer.CheckVisibility () <0x22e7f28 + 0x00292> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_1 (System.Object state) <0x25f8fd8 + 0x0000c> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context (System.Object state) <0x25f8f88 + 0x0001c> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) <0x1bad018 + 0x00100> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) <0x1bacdd8 + 0x00010> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () <0x25f8f18 + 0x00038> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading.ThreadPoolWorkQueue.Dispatch () <0x22a1460 + 0x00102> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () <0x22a10c8 + 0x00000> in <filename unknown>:0 [blazor.webassembly.js:1:37761](https://blazor-diagrams.zhaytam.com/_framework/blazor.webassembly.js)
Uncaught 
Object { name: "ExitStatus", message: "Program terminated with exit(255)", status: 255 }

HugoVG avatar Nov 10 '22 14:11 HugoVG

Just tried with a really big canvas on version 3.0 Beta 4 and it seems resolved there, only the linking issues still persist and it sometimes spams the console with errors.

HugoVG avatar Nov 10 '22 14:11 HugoVG

Hello, yeah that was fixed in 3.0. What do you mean by "only the linking issues still persist and it sometimes spams the console with errors."?

zHaytam avatar Nov 10 '22 18:11 zHaytam

testing on 74+ nodes we are having some issues with it linking, it takes 2 State changed for it to be Fixed, it mostly happens when a node is placed outside the visible canvas it'll try and link bit will just place it randomly.

HugoVG avatar Nov 13 '22 19:11 HugoVG

I will need some way to reproduce the issue in order to understand it and/or fix it

zHaytam avatar Nov 13 '22 19:11 zHaytam

@zHaytam Do you have any predictions of when version 3.0 will come out of beta?

juliolitwin avatar Nov 21 '22 20:11 juliolitwin

@zHaytam Do you have any predictions of when version 3.0 will come out of beta?

Most likely the beginning of december.

zHaytam avatar Nov 24 '22 09:11 zHaytam