-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
core/object/message_queue.cpp
: Calls to statistics()
function needs to be removed
#63298
Comments
core/object/message_queue.cpp
: Calls to statistics()
function needs to be removed
PS: Code blocks should use triple backticks like this (with an optional language name for syntax highlighting): ```cpp I edited your post accordingly, but remember to do this in the future 🙂 |
This is probably due to the message queue running out of memory, and it cunningly prints out a lot of debug statistics every frame from that point lol. 😁 I can fix this soon if #65740 is merged. I did think about combining, but it would be better to bikeshed separately, as the there are a couple of solutions - This error will also be less likely to occur anyway with growable message queue. 👍 |
This may be solved already in 4.1 as the MessageQueue is growable, though I'll let you assess further @lawnjelly. I don't remember ever seeing the |
may be fixed by #89490 |
Can someone confirm this still occurs? Should have been fixed |
Closing as resolved, if someone can still reproduce this please comment |
Godot version
Godot 4.0 alpha 10, alpha 12, dev (v4.0.alpha.custom_build [3fe89e7])
System information
Ubuntu 20.04.3 LTS Memory: 31.3 GB
Issue description
Based on a plain reading of the statistics function in core/object/message_queue.cpp, the function should be entirely unnecessary, since it does not directly operate on any non-local memory, and returns nothing. However, this function gets called so continually in my project, that the project simply froze until I used kill -9 on Godot. I proceeded to make a new version of Godot where the sole change was to remove all calls to the statistics(); function in message_queue.cpp, and return FAILED; instead of freezing my project due to this function, the project "worked", but there was a regression in the form of the cursor being registered in the Editor as 1 inch away from where my cursor actually was, causing many problems thus (but detached windows were unaffected).
Steps to reproduce
/* message_queue.cpp use this to replace the message_queue.cpp source file,
then compile with
scons -j23 platform=linuxbsd tools=yes use_lto=yes CXXFLAGS=-O3
Then open Godot with a project with sufficiently large object files in the 3D editor.
My own project used many instances of the files contained here: https://utdallas.box.com/s/oy709oo4pes6sqzjuhyazvsywseyw76t
Minimal reproduction project
The large object files I was using are here: https://utdallas.box.com/s/oy709oo4pes6sqzjuhyazvsywseyw76t
The file size exceeds what Godot allows, so I am using my student box drive with a public link.
The text was updated successfully, but these errors were encountered: