Maniphest T101433

Delete Hierarchy operator crashes on an object whose collection is referenced by a Collection Info node with Separate Children enabled
Closed, Resolved

Assigned To
Jacques Lucke (JacquesLucke)
Authored By
slwk1d (Slowwkidd)
Sep 28 2022, 1:00 PM
Tags
  • BF Blender
  • Geometry Nodes
  • Nodes & Physics
Subscribers
Jacques Lucke (JacquesLucke)
Omar Emara (OmarSquircleArt)
Philipp Oeser (lichtwerk)
slwk1d (Slowwkidd)

Description

Simplified Report

Delete Hierarchy operator crashes on an object whose collection is referenced by a Collection Info node with Separate Children enabled

  • Delete Hierarchy the icosphere in the attached file.
  • Blender crashes with a different trace every time.

Original Report

System Information
Operating system: Windows-10-10.0.19044-SP0 64 Bits
Graphics card: NVIDIA GeForce GTX 1080 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 516.94

Blender Version
Broken: version: 3.3.0, branch: master, commit date: 2022-09-06 15:39, hash: rB0759f671ce1f
Worked: (newest version of Blender that worked as expected)

Short description of error
Distributing instances part of a collection, enabling both the "Separate Children" checkbox in the Collection Info node and the "Hierarchy" checkbox in the Delete keymap of the Outliner, and then deleting one of the collection's objects, crashes Blender.

Exact steps for others to reproduce the error
Create a simple GN node tree with a distribute points on faces and a instances on points nodes> Use as instances a Collection of multiple objects> Enable "Separate Children" in the Collection Info node> Enable Hierarchy in the Delete keymap of the Outliner> Delete one of the collection's objects.

Revisions and Commits

rB Blender

Event Timeline

slwk1d (Slowwkidd) created this task.Sep 28 2022, 1:00 PM
slwk1d (Slowwkidd) added a project: Geometry Nodes.
Omar Emara (OmarSquircleArt) changed the task status from Needs Triage to Needs Information from User.Sep 28 2022, 3:14 PM
Omar Emara (OmarSquircleArt) added a subscriber: Omar Emara (OmarSquircleArt).

I can't replicate the crash in multiple configurations. Can you not attach the file just before the crash?
There are also linked libraries that we don't have access to, could this be related?

Please open Blender's installation directory and double click on the blender_debug_gpu.cmd. This will start Blender in debug mode and create log files. Try to reproduce the error again. Once it crashes or you close Blender manually the Windows Explorer should open and show you up to two files, a debug log and the system information. Add them to your bug report by clicking on the upload button as shown in the screenshot below or via drag and drop. Please also upload the crash log located in C:\Users\[your username]\AppData\Local\Temp\[project name].crash.txt (or simply type %TEMP% into the path bar of the Windows Explorer).

slwk1d (Slowwkidd) updated the task description.Sep 28 2022, 3:33 PM
slwk1d (Slowwkidd) added a comment.EditedSep 28 2022, 3:36 PM

@Omar Emara (OmarSquircleArt) Done! I recreated a file (Bug_2) with factory settings and saved before the crash happened, so when open it you should find the collection info node with a collections till to assign and the checkboxes not enabled.

I opened the blend file with the debug mode and the crash happened. The new file and debug and system info texts are in the task.

The only file that I couldn't find is the crash log in temp. can't seem to find it.

Omar Emara (OmarSquircleArt) changed the task status from Needs Information from User to Needs Triage.Sep 28 2022, 3:42 PM

I still can't reproduce the issue unfortunately.

slwk1d (Slowwkidd) added a comment.Sep 28 2022, 3:48 PM

Ok, I think I somehow got it, and as you presumed has to do with some addons: I have 2 addons related to geometry nodes that might be the problem, I'll update once I find out just to be sure its their fault :).

slwk1d (Slowwkidd) added a comment.EditedSep 28 2022, 5:09 PM

Oddly enough, it isn't what I thought: I disabled all the add-ons related to GN and also Blenderkit add-on, which in the past already was the cause of other bugs, but the bug still happens. The only time where it didn't happen was when I had a factory settings of the Preferences enabled. So, at least I can say it's something in the Preferences that's, even partially, causing it. I'll try to dive deeper, but I could determine one thing though: It's not all the checkboxes enabled it's the "Separate Children" checkbox that seems to be the trigger of the crash.

EDIT:
I think I found it: having enabled Hierarchy in the delete keymap in the Outliner is what, along with "Separate Children", causes the crash.

slwk1d (Slowwkidd) renamed this task from Deleting an instance part of a Collection used in the Collection Info node, with the checkboxes enabled, crashes Blender to Deleting an instance part of a Collection used in the Collection Info node, with the "Separate Children" enabled, crashes Blender.Sep 28 2022, 5:10 PM
slwk1d (Slowwkidd) renamed this task from Deleting an instance part of a Collection used in the Collection Info node, with the "Separate Children" enabled, crashes Blender to Deleting an instance part of a Collection used in the Collection Info node, with "Separate Children" enabled, and "Delete Hierarchy" in the <outliner keymap enabled, crashes Blender..Sep 28 2022, 5:22 PM
slwk1d (Slowwkidd) renamed this task from Deleting an instance part of a Collection used in the Collection Info node, with "Separate Children" enabled, and "Delete Hierarchy" in the <outliner keymap enabled, crashes Blender. to Deleting an instance part of a Collection used in the Collection Info node, with "Separate Children" enabled, and "Delete Hierarchy" in the Outliner keymap enabled, crashes Blender..
slwk1d (Slowwkidd) updated the task description.
Omar Emara (OmarSquircleArt) added a comment.Sep 28 2022, 10:31 PM

Thanks for finding the root cause! I can confirm the issue now.

Omar Emara (OmarSquircleArt) renamed this task from Deleting an instance part of a Collection used in the Collection Info node, with "Separate Children" enabled, and "Delete Hierarchy" in the Outliner keymap enabled, crashes Blender. to Delete Hierarchy operator crashes on an object whose collection is referenced by a Collection Info node with Separate Children enabled.Sep 28 2022, 10:44 PM
Omar Emara (OmarSquircleArt) changed the task status from Needs Triage to Confirmed.
Omar Emara (OmarSquircleArt) updated the task description.
Omar Emara (OmarSquircleArt) added a project: Nodes & Physics.
Philipp Oeser (lichtwerk) added subscribers: Jacques Lucke (JacquesLucke), Philipp Oeser (lichtwerk).Sep 30 2022, 11:44 AM

I get the crash constantly here:

1  library_foreach_ID_link                            lib_query.c               333  0x85a289  
2  BKE_library_foreach_ID_link                        lib_query.c               353  0x85a37b  
3  blender::deg::deg_validate_copy_on_write_datablock deg_eval_copy_on_write.cc 1050 0x14e4223 
4  (anonymous namespace)::deg_iterator_duplis_step    depsgraph_query_iter.cc   197  0x14b46e8 
5  DEG_iterator_objects_next                          depsgraph_query_iter.cc   343  0x14b4ca1 
6  DRW_draw_render_loop_ex                            draw_manager.c            1702 0x15251c2 
7  DRW_draw_view                                      draw_manager.c            1616 0x1524cb5 
8  view3d_draw_view                                   view3d_draw.cc            1551 0x2ae5f4d 
9  view3d_main_region_draw                            view3d_draw.cc            1585 0x2ae6088 
10 ED_region_do_draw                                  area.c                    545  0x1ac6a29 
11 wm_draw_window_offscreen                           wm_draw.c                 944  0x118ca08 
12 wm_draw_window                                     wm_draw.c                 1111 0x118d065 
13 wm_draw_update                                     wm_draw.c                 1371 0x118d84a 
14 WM_main                                            wm.c                      646  0x1187fb1 
15 main                                               creator.c                 575  0x790114

The IDs name for the Icoshere is something like \000BIcosphere\000\000\... where usually this looks like OBIcosphere\000\000\...
When this happens, BKE_idtype_get_info_from_id cant determine the IDTypeInfo (returns NULL).

@Jacques Lucke (JacquesLucke) might now more

slwk1d (Slowwkidd) added a comment.Oct 3 2022, 5:53 PM

I hope a fix can be found in time for 3.3.1, I constantly rely on having the Delete Hierarchy option in the keymap for speeding up the process of deletion of Collections and Parents with objects.

Jacques Lucke (JacquesLucke) triaged this task as High priority.Nov 28 2022, 12:24 PM
Jacques Lucke (JacquesLucke) closed this task as Resolved by committing rB99c5146e9a7a: Fix T101433: crash when deleting hierarchy referenced by Collection Info node.Nov 28 2022, 12:52 PM
Jacques Lucke (JacquesLucke) claimed this task.
Jacques Lucke (JacquesLucke) added a commit: rB99c5146e9a7a: Fix T101433: crash when deleting hierarchy referenced by Collection Info node.