excubo-ag / WebCompiler

Apache License 2.0
148 stars 29 forks source link

ClearScript v7.4.2 is unstable and randomly crashes (memory corruption) with SIGSEGV on Linux #73

Closed rwasef1830 closed 9 months ago

rwasef1830 commented 1 year ago

Hello, Since version 3.5.53 (upgrade to clearscript engine packages to 7.4.2), webcompiler has been randomly crashing inside the clearscript unmanaged code with SIGSEGV. The crash appears to be a memory corruption, because by repeating the build multiple times with no changes, it sometimes passes and sometimes crashes.

I highly recommend downgrading back to 7.4.1 of these Clearscript packages. Downgrading webcompiler down to 3.5.44 restored stability to the build (it's the first version right before those package updates).

EDIT: It maybe possible that ClearScript is not unstable, but instead, that there may have been a signature change to an exported unmanaged function that needs a corresponding change to the C# Interop code which is now causing a stack corruption.

rwasef1830 commented 1 year ago

The interop issue belongs upstream to JavascriptSwitcher (if there is one), however WebCompiler is explicitly referencing 7.4.2 of ClearScript.

stefanloerwald commented 1 year ago

Hi @rwasef1830,

Thanks for raising this issue and apologies for the delay in replying to this. Unfortunately issues from the JS dependencies are hard to diagnose and to mitigate. Downgrading just the ClearScript packages might break things further as the package JavaScriptEngineSwitcher.V8 might also be involved. Until this issue is resolved in those projects, I recommend just sticking with the older version (3.5.44) on WebCompiler. As there's no feature work currently ongoing in this project, you're not missing out on anything by downgrading.

Sorry for the inconvenience.

Best regards, Stefan

P.S.: For reference, these are the repositories for the dependencies:

rwasef1830 commented 9 months ago

This issue seems to have disappeared, will reopen if reproducible again.