openplanet-nl / issues

Issue tracker for Openplanet.
10 stars 0 forks source link

Reproduction of Crash: Assertion Failed (Expression: value < 1000000) #379

Closed smalljustin closed 6 months ago

smalljustin commented 11 months ago

I've found a replication for the 'Assertion Failed' issue. This issue tends to come up infrequently when large amounts of objects are being created.

Run "Do coroutine count testing" in the plugin - with 500k runnables (the default in the plugin), it only took running it twice to get the crash. Also, had an interesting case where the crash happened when I restarted the script engine (rather than hitting the plugin again itself). This seems to happen more quickly if it's run through coroutines rather than directly.

Repo: https://github.com/smalljustin/testing-yield

(the same is attached)

testing-yield.zip

Between this and the last replication attempt, the data arrays are within an object rather than being at the global level.

(This same issue does come up inside a real use case in the COTD qualification grapher, albeit pretty rarely. So not purely theoretical!)

image

codecat commented 6 months ago

I'll close this for now as it seems to be not a very practical issue, as you have noted. For reference, asCAtomic has these assertions as a safety mechanism, so this is not necessarily a bug either.

https://github.com/codecat/angelscript-mirror/blob/35623df4afc593dbdee9b5c60734c72d4842784f/sdk/angelscript/source/as_atomic.cpp#L46-L53