Huge performance regression when upgrading to 1.18.16 from 1.16.16

When updating to the latest 2019.4LTS, the Addressables updated from 1.16.16 to 1.18.16.
We immediatly suffered a 100% reproductible several minutes long freeze when loading our game.

After investigating, this appears to be caused by the very expensive delegate binding in the AssetReference constructor:


Here are the different constructors before and after the update:

7572412--937843--AssetReferenceConstructor_1.16.16.png

Building the game took a huge hit as well. 3h of building addressables didn’t even go past the scene dependency stage (usually it takes us 20 to 30min to build the whole thing).

Thankfully we were able to downgrade back to 1.16.16 as the new version is plainly put unusable as is.

Is this known/fixed in later versions?

3 Likes

Hello! Please file a bug report on this, if you haven’t already, that way our QA team can investigate.

I have noticed this issue as well, I’m working in a big project, with thousands of AssetReferences in managed memory. This callback operation in AssetReference constructor costs us around 15s on every Domain Reload (script change, enter playmode, etc.), so it’s a huge problem for us.

I haven’t found it reported on issue tracker, so I have filed a bug report with sample project and easy reproduction, but it was 21 days ago and no response yet. I’m afraid that the case will be forgotten and won’t be fixed anytime soon. Could someone look at it and push the case further?

My case number: 1378457

3 Likes

I forgot to update this post but we did end up creating a bug report over there: Unity Issue Tracker - Editor freezes when using Addressables AssetReferences

1 Like