Search Issue Tracker

Fixed

Fixed in 1.21.20, 2.0.7

Votes

1

Found in [Package]

1.21.17

Issue ID

ADDR-3559

Regression

No

[Profiler] The Addressable Asset Module module outputs an ArgumentException when asset GUIDs produce a hash collision with Addressables

Package: Build Pipeline - Addressables

-

Steps to reproduce:
1. Open the attached user's project "Profiler Hash Collision.zip"
2. Make an Addressables build
3. On the Addressables menu set the Play Mode Script to use Existing Build
4. Open the Unity Profiler, make sure you have Addressable Assets Module enabled
5. Hit play and wait until the Sphere and Cube is loaded in memory
6. Stop the profile recording as soon at the objects are loaded in memory and select Addressable Assets Module
7. Navigate throught the frames until you reach the assets loading

Expected results: The profiler module should display the bundles/assets loaded
Actual results: You get an error in the console "ArgumentException: An item with the same key has already been added. Key: -145418946" when viewing loaded memory and having Addressable Asset Module selected in Profiler

Reproducible with: 2022.3.10f1, 2023.1.15f1, 2023.2.0b12, 2023.3.0a7
Could not test on 2021.3.30f1 due to Addressables Profiler detailed view only being supported on 2022.2 and later

Reproducible on: Windows 11, Windows 10, macOS 13.5
Not reproducible on: No other environment tested

Notes:
-Having Addressable Asset Module selected is required to reproduce the error
-Error in Console:
ArgumentException: An item with the same key has already been added. Key: -145418946
System.Collections.Generic.Dictionary`2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) (at <e83baa97766c48ccb8f12fd8854cf705>:0)
System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) (at <e83baa97766c48ccb8f12fd8854cf705>:0)
UnityEngine.UIElements.TreeData`1[T].BuildTree (System.Collections.Generic.IEnumerable`1[T] items, System.Boolean isRoot) (at <af3eef6f229546c2beadcba8c4ebda5e>:0)
UnityEngine.UIElements.TreeData`1[T].RefreshTree (System.Collections.Generic.IList`1[T] rootItems) (at <af3eef6f229546c2beadcba8c4ebda5e>:0)

  1. Resolution Note (fix version 2.0.7):

    Fixed issue where an ArgumentException can occur when viewing multiple assets in the Addressables Profiler.

  2. Resolution Note (fix version 1.21.20):

    Fixed issue where an ArgumentException can occur when viewing multiple assets in the Addressables Profiler.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.