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

Godot crashed while saving a scene, project can no longer be opened #39582

Closed
krfgbhoiaeuzr opened this issue Jun 15, 2020 · 11 comments
Closed

Comments

@krfgbhoiaeuzr
Copy link

Godot version:
3.2.1.stable

OS/device including version:
Windows 10, build 1909

Issue description:
While saving a scene, godot crashed (stopped responding) at 100% save progress into a black screen, forcing me to manually restart the machine. After that, on opening the project, the message "Error loading: MainScene.tscn / Load failed due to missing dependencies / (SceneLastWorkedOn).tscn" now appears. However, clicking "fix dependencies" shows no errors, and I also checked that all files are still there in explorer. Choosing "open anyway" just tells me the main scene can not be opened due to missing dependencies.

Searched around a bit in open issues and also looked into the project files with text editor, but could not find anything that helps. I assume, the scene file got damaged due to incomplete saving, but i have no idea how to debug or fix that. Being able to open the MainScene again (which should not be damaged) would be nice, so I don't loose all the progress.

Log messages when I open the project:

ERROR: open: res://Provinz.tscn:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:843
ERROR: Failed loading resource: res://Provinz.tscn.
At: core/io/resource_loader.cpp:278
ERROR: open: res://Provinz.tscn:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:843
ERROR: Failed loading resource: res://Provinz.tscn.
At: core/io/resource_loader.cpp:278
WARNING: _parse_ext_resource: Couldn't load external resource: res://Provinz.tscn
At: scene/resources/resource_format_text.cpp:175
ERROR: open: res://Provinz.tscn:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:843
ERROR: Failed loading resource: res://Provinz.tscn.
At: core/io/resource_loader.cpp:278
WARNING: _parse_ext_resource: Couldn't load external resource: res://Provinz.tscn
At: scene/resources/resource_format_text.cpp:175
ERROR: open: res://Provinz.tscn:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:843
ERROR: Failed loading resource: res://Provinz.tscn.
At: core/io/resource_loader.cpp:278
WARNING: _parse_ext_resource: Couldn't load external resource: res://Provinz.tscn
At: scene/resources/resource_format_text.cpp:175
ERROR: open: res://Provinz.tscn:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:843
ERROR: Failed loading resource: res://Provinz.tscn.
At: core/io/resource_loader.cpp:278
WARNING: _parse_ext_resource: Couldn't load external resource: res://Provinz.tscn
At: scene/resources/resource_format_text.cpp:175
ERROR: open: res://Provinz.tscn:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:843
ERROR: Failed loading resource: res://Provinz.tscn.
At: core/io/resource_loader.cpp:278
WARNING: _parse_ext_resource: Couldn't load external resource: res://Provinz.tscn
At: scene/resources/resource_format_text.cpp:175
ERROR: remove_scene: Index p_idx = 1 is out of bounds (edited_scene.size() = 1).
At: editor/editor_data.cpp:567
ERROR: recognize: res://default_env.tres:1 - Parse Error:
At: scene/resources/resource_format_text.cpp:1190

Steps to reproduce:

Minimal reproduction project:

@Zylann
Copy link
Contributor

Zylann commented Jun 16, 2020

Can't help much without the said project to inspect, unfortunately. If the OS had to shutdown it seems like some files got corrupted indeed.

@krfgbhoiaeuzr
Copy link
Author

krfgbhoiaeuzr commented Jun 16, 2020

I can upload if it's really neccesary. Which parts of the project would you need, just the script files?

@Zireael07
Copy link
Contributor

We'd need the whole project folder, but from the looks of the error messages, the files got corrupted unfortunately.

@Calinou
Copy link
Member

Calinou commented Jun 16, 2020

I assume, the scene file got damaged due to incomplete saving, but i have no idea how to debug or fix that. Being able to open the MainScene again (which should not be damaged) would be nice, so I don't loose all the progress.

In the future, I highly recommend setting up some kind of version control (typically Git) to avoid losing unsaved work. It'll let you quickly backup your project to a remote service as well.

@krfgbhoiaeuzr
Copy link
Author

Alright, i can live with loosing some work. Don't want to make the whole project public just yet, so uploading everything is not possible.

What about the crash though? Ideally an editor would never crash, but while saving is propably one of the worst times, because it will likely destroy files. Seems like a serious bug which should be further investigated. Should i upload a crash report? Use a Debug build of godot in case it crashes again? Try to create a minimal project that reproduces the issue? Search for windows event logs?

@Calinou
Copy link
Member

Calinou commented Jun 16, 2020

Should i upload a crash report? Use a Debug build of godot in case it crashes again? Try to create a minimal project that reproduces the issue?

You could run a Godot debug build that will give you a helpful backtrace when it crashes: https://github.com/Calinou/godot-debug-builds

You'll need to start it from a terminal to be able to see the output while it crashes (so you can copy it afterwards). Also, you'll have to rename the executable to godot.windows.opt.tools.64.exe due to this issue.

Search for windows event logs?

I don't think Windows event logs will contain anything meaningful for this issue.

@krfgbhoiaeuzr
Copy link
Author

You'll need to start it from a terminal to be able to see the output while it crashes (so you can copy it afterwards).

Well, when the crash happened, it instantly froze my entire system. So I would not be able copy anything at that point. Does it not automatically save the output somewhere?

@ghost
Copy link

ghost commented Jun 16, 2020

@krfgbhoiaeuzr In the Project Settings there is a category for logging. When enabled it saves the console output in the user data folder.

Though not all crashes give output.

@Calinou
Copy link
Member

Calinou commented Jun 17, 2020

@avencherus #33253 might be problematic for this use case though 🙁

@qarmin
Copy link
Contributor

qarmin commented Jan 20, 2021

Is crash still reproducible?
Without test project we can't check it.

@Calinou
Copy link
Member

Calinou commented Feb 14, 2021

Closing, as nobody has been able to reproduce this recently. See also #31578 which is a closely related issue.

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