The backend jobs are using node id's, which have not yet been created in the backend. Trying to access these nodes using nodeManagers return nullptr and if the jobs are not checking for this they crash.
In this use case we are creating new nodes dynamically and some of the nodes are being created(and added to the node managers) while others have not yet been created. In this case it seems that the entity is created first and also the scene change adding layer to the entity is processed, but the layer node is not yet created. Somehow these new entities are processed with the jobs before the layer nodes are created so the jobs crash, updateentitylayerjob in this case. I added nullptr check to the job, after which materialgathererjob also crashed in addParametersForIds.
|For Gerrit Dashboard: QTBUG-72236|
|247121,3||Add nullptr checks to jobs||5.12||qt/qt3d||Status: ABANDONED||0||0|
|247643,5||Make sure backend node is created when component is added to Entity||5.12.2||qt/qt3d||Status: MERGED||+2||0|
|247797,3||Add manual test for backend node creation for components||5.12.2||qt/qt3d||Status: MERGED||+2||0|