Search Issue Tracker
Won't Fix
Votes
0
Found in
2021.3.22f1
2022.2.11f1
2023.1.0b6
2023.2.0a7
Issue ID
UUM-32155
Regression
No
MemoryExtensions.IndexOf allocates gigabytes of memory when using StringComparison overload
Reproduction steps:
1. Open the attached project “IndexProject“
2. Enter The Play Mode
3. Observe the Console
Expected result: MemoryExtensions.IndexOf works directly with ReadOnlySpan<> without creating a large number of new allocations
Actual result: IndexOfSlow() is exponentially slower than IndexOfFast()
Reproducible with: 2021.3.22f1, 2022.2.11f1, 2023.1.0b6, 2023.2.0a7
Couldn’t test with: 2020.3.46f1- ”error CS0246: The type or namespace name 'ReadOnlySpan<>' could not be found”
Reproducible on: Windows 10
Note: “IndexOfSlow()” in “Assets/ProblemBehaviour.cs“ uses MemoryExtensions.IndexOf with StringComparison overload creates a large number of allocations which causes a long garbage collection time.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Crash on GUIManager::DoGUIEvent when focusing on the Game view window on a specific project
- Asset creation in the Project Browser is not always undone/inconsistent when the undo shortcut is pressed right after creating an asset
- JobTempAlloc memory leak warning is thrown when the Player is shut down
- Graphics State Collection warm-up does not work when using with Addressables Shaders
- "Baked Shadow Radius" field is visible but inactive when when the Shadow Type is set to "Hard Shadows" under the Light Component
Resolution Note:
We're not planning to correct this issue on the Mono base class library implementation that Unity uses now.