Skip to content
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

ERROR: 1 RID allocations of type 'N5GLES37TextureE' were leaked at exit. #80140

Closed
cassidydotdk opened this issue Aug 1, 2023 · 7 comments
Closed

Comments

@cassidydotdk
Copy link

Godot version

v4.1.1.stable.official.bd6af8e0e

System information

Godot v4.1.1.stable - Windows 10.0.22621 - Vulkan (Compatibility) - NVIDIA GeForce RTX 4090 (NVIDIA; 31.0.15.3667) - 12th Gen Intel(R) Core(TM) i9-12900K (24 Threads)

Issue description

I've ended up in a situation where I'm seeing the above error every time I open my project. I can't tell you exactly how I ended up here, but I can narrow it down.

In the editor - I was experimenting with a scene, creating some nodes in my scene tree. On some of those nodes I had scripts attached and was experimenting with various @export properties (@export_file, @export_dir), dragging in various references from the file system.

When I was done experimenting, I deleted the root test folder I was working in, to get rid of all the .tscn and .gd files. And this is where it probably went wrong. I maybe had unsaved script files open or something. It was from this point on this error started occurring. To begin with it was also flagging an error for a .gd file that was part of my experiment, claiming it was missing. Well yea - since I've deleted it all :D I fixed this by re-creating the dummy folder, creating a dummy file of the same name. And then deleting it again via the GUI.

But the remaining persists. I imagine it is expecting to find some sort of Texture2D - I was dragging images onto Texture2D properties as part of my experiment.

Regardless, something isn't quite right when some regular user shenanigans can bring the project to this state :D

Is there any way I can reset the project state somehow, to get back on track? or to identify what 'N5GLES37TextureE' is referring to?

Full exception here:

Godot Engine v4.1.1.stable.official.bd6af8e0e - https://godotengine.org
OpenGL API 3.3.0 NVIDIA 536.67 - Compatibility - Using Device: NVIDIA - NVIDIA GeForce RTX 4090

ERROR: Condition "!texture_allocs_cache.has(p_id)" is true.
   at: texture_free_data (drivers/gles3/storage/utilities.h:111)
ERROR: Cubemap Arrays are not supported in the GL Compatibility backend.
   at: (drivers/gles3/storage/texture_storage.cpp:763)
ERROR: Attempting to use an uninitialized RID
   at: (./core/templates/rid_owner.h:199)
ERROR: Condition "!t" is true.
   at: texture_free (drivers/gles3/storage/texture_storage.cpp:705)
ERROR: 1 RID allocations of type 'N5GLES37TextureE' were leaked at exit.

Steps to reproduce

Unfortunately I cannot reproduce. I've given as much detail as I can above.

Minimal reproduction project

Cannot reproduce.

@AThousandShips
Copy link
Member

@cassidydotdk
Copy link
Author

I downloaded 4.2.dev and gave it a try. Actually getting even more exceptions now.

Godot Engine v4.2.dev2.official.da81ca62a - https://godotengine.org
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
ERROR: Trying to execute a deferred call/notification/set on a previously freed instance. Consider using queue_free() instead of free().
   at: flush (core/object/message_queue.cpp:327)
OpenGL API 3.3.0 NVIDIA 536.67 - Compatibility - Using Device: NVIDIA - NVIDIA GeForce RTX 4090

ERROR: Condition "!texture_allocs_cache.has(p_id)" is true.
   at: texture_free_data (drivers/gles3/storage/utilities.h:111)
ERROR: Cubemap Arrays are not supported in the GL Compatibility backend.
   at: (drivers/gles3/storage/texture_storage.cpp:763)
ERROR: Attempting to use an uninitialized RID
   at: (./core/templates/rid_owner.h:199)
ERROR: Condition "!t" is true.
   at: texture_free (drivers/gles3/storage/texture_storage.cpp:705)
WARNING: Scan thread aborted...
     at: _notification (editor/editor_file_system.cpp:1224)
ERROR: 1 RID allocations of type 'N5GLES37TextureE' were leaked at exit.

@AThousandShips
Copy link
Member

It is not included in 4.2.dev2, it was merged just today, you'll have to wait for dev3

@akien-mga akien-mga added this to the 4.2 milestone Aug 2, 2023
@YuriSizov
Copy link
Contributor

Possibly duplicate of:

Which has been solved in 4.2.dev in:

This seems like a correct assessment to me, so I'm going to close this issue as a duplicate. Let me know if you can still reproduce it in the recent builds of Godot 4.2, so we can reopen it.

@git2013vb
Copy link

The problem seems still there:

PulseAudio: context terminated
ERROR: 11 RID allocations of type 'N5GLES37TextureE' were leaked at exit.
ERROR: Texture with GL ID of 392: leaked 2748 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 408: leaked 760 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 409: leaked 760 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 410: leaked 760 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 411: leaked 760 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 441: leaked 2748 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 1053: leaked 131072 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 1058: leaked 131072 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 1211: leaked 131072 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 1338: leaked 131072 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Texture with GL ID of 1339: leaked 131072 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:79)
ERROR: Buffer with GL ID of 160: leaked 1536 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:95)
ERROR: Buffer with GL ID of 161: leaked 552 bytes.
   at: ~Utilities (drivers/gles3/storage/utilities.cpp:95)
ERROR: 6 RID allocations of type 'N18RendererCanvasCull4ItemE' were leaked at exit.

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.1.stable.official (b09f793f564a6c95dc76acc654b390e68441bd01)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x38d60) [0x7fc555cbdd60] (??:0)
[2] /home/vale/Downloads/godot_normal/Godot_v4.2.1-stable_linux.x86_64() [0x302c657] (??:0)
[3] /home/vale/Downloads/godot_normal/Godot_v4.2.1-stable_linux.x86_64() [0x307bd92] (??:0)
[4] /home/vale/Downloads/godot_normal/Godot_v4.2.1-stable_linux.x86_64() [0x304631d] (??:0)
[5] /home/vale/Downloads/godot_normal/Godot_v4.2.1-stable_linux.x86_64() [0x315c13a] (??:0)
[6] /home/vale/Downloads/godot_normal/Godot_v4.2.1-stable_linux.x86_64() [0x420502] (??:0)
[7] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x7fc555ca8d0a] (??:0)
[8] /home/vale/Downloads/godot_normal/Godot_v4.2.1-stable_linux.x86_64() [0x42aa6a] (??:0)
-- END OF BACKTRACE --
================================================================
Aborted

@YuriSizov
Copy link
Contributor

@git2013vb Do you have a reproduction project for that leak?

@leosat
Copy link

leosat commented Sep 7, 2024

Hi, you can try e.g. "platformer shooter" demo for similar reproduction, the error is still there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants