Search Unity

Bug burst 1.8.x occured error when build

Discussion in 'Burst' started by thebackend, May 22, 2023.

  1. thebackend

    thebackend

    Joined:
    Mar 18, 2019
    Posts:
    1
    I upgraded Unity by 2022.2.18 and my burst version is 1.8.4.
    I installed my native C# SDK and I built by Window. but The Error occured.

    Failed to find entry-points:
    System.Exception: Error while hashing assembly C:\Users\khs\Documents\UnityProject\My project (3)\Assets\Plugins\Backend.dll ---> System.ArgumentException: An item with the same key has already been added. Key: ab51592ddff0ec7816dcd0bf7a6a095b
    at System.Collections.Generic.Dictionary`2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) [0x000dd] in <cbc72d4a9767498db39486e941a498e3>:0
    at System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) [0x00000] in <cbc72d4a9767498db39486e941a498e3>:0
    at Burst.Compiler.IL.Hashing.Storage.NameToTokenDictionary.AddHash (Burst.Compiler.IL.Helpers.Hash128& hash, System.Int32 token) [0x00000] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Hashing.CacheBuilder.ILHasher.HashImpl () [0x0022c] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Hashing.CacheBuilder.ILHasher.HashAssembly (System.String filePath, System.Threading.Tasks.TaskFactory taskFactory) [0x00008] in <e897daa8366b4183b121ad602adf2292>:0
    --- End of inner exception stack trace ---
    at Burst.Compiler.IL.Hashing.CacheBuilder.ILHasher.HashAssembly (System.String filePath, System.Threading.Tasks.TaskFactory taskFactory) [0x0002d] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Hashing.CacheRuntime.HashCacheLoader.CreateHashingResult (Mono.Cecil.AssemblyNameReference assemblyNameReference, Burst.Compiler.IL.AssemblyLoader assemblyLoader, Burst.Compiler.IL.Helpers.DebugLogWriter debugLogWriter) [0x001b1] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Hashing.CacheRuntime.HashCacheAssemblyStore.GetAssemblyState (System.String assemblyName, Burst.Compiler.IL.AssemblyLoader assemblyLoader) [0x000a0] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Server.EntryPointMethodFinder.LoadAllAssemblyReferences (Mono.Cecil.AssemblyDefinition asmDef, System.Collections.Generic.Dictionary`2[TKey,TValue] visited, System.Collections.Generic.Dictionary`2[TKey,TValue] jobProducers, Burst.Compiler.IL.Hashing.CacheRuntime.HashCacheAssemblyStore assemblyStore, Burst.Compiler.IL.AssemblyLoader assemblyLoader) [0x00025] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Server.EntryPointMethodFinder.LoadAllAssemblyReferences (Mono.Cecil.AssemblyDefinition asmDef, System.Collections.Generic.Dictionary`2[TKey,TValue] visited, System.Collections.Generic.Dictionary`2[TKey,TValue] jobProducers, Burst.Compiler.IL.Hashing.CacheRuntime.HashCacheAssemblyStore assemblyStore, Burst.Compiler.IL.AssemblyLoader assemblyLoader) [0x001e3] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Server.EntryPointMethodFinder.FindEntryPoints (System.String[] rootAssemblyNames, Burst.Compiler.IL.Hashing.CacheRuntime.HashCacheAssemblyStore assemblyStore, Burst.Compiler.IL.AssemblyLoader assemblyLoader, Burst.Compiler.IL.NativeCompilerOptions options, Burst.Compiler.IL.Server.ProfileDelegate profileCallback, System.Boolean includeRootAssemblyReferences, System.Boolean splitTargets) [0x00071] in <e897daa8366b4183b121ad602adf2292>:0
    at Burst.Compiler.IL.Server.FindMethodsJob.Execute (Burst.Compiler.IL.Server.CompilerServerJobExecutionContext context) [0x0011e] in <e897daa8366b4183b121ad602adf2292>:0

    While compiling job:



    I thought my SDK's referenced library and Unity's library were conflicted, so I test each referenced library.
    Then I found the EngineIoClientDotNet 9.0.22 is contained Newtonsoft 8.0.0.
    Below Error is When I contain only EngineIoClientDotNet dll in Unity Project without any dll.

    ArgumentException: The Assembly Newtonsoft.Json is referenced by EngineIoClientDotNet ('Assets/EngineIoClientDotNet.dll'). But the dll is not allowed to be included or could not be found.
    UnityEditor.AssemblyHelper.AddReferencedAssembliesRecurse (System.String assemblyPath, System.Collections.Generic.List`1[T] alreadyFoundAssemblies, System.String[] allAssemblyPaths, System.String[] foldersToSearch, System.Collections.Generic.Dictionary`2[TKey,TValue] cache, UnityEditor.BuildTarget target, UnityEditor.ScriptingImplementation scriptingImplementation) (at <10c84b1f46b048e28e06a4f5c75562ed>:0)
    UnityEditor.AssemblyHelper.FindAssembliesReferencedBy (System.String[] paths, System.String[] foldersToSearch, UnityEditor.BuildTarget target, UnityEditor.ScriptingImplementation scriptingImplementation) (at <10c84b1f46b048e28e06a4f5c75562ed>:0)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr, Boolean&)


    Burst 1.7.3 version didn't ocurred this error. Can I have some solution exclude burst downgrade and EngineIoClientDotNet editing.
     
  2. tim_jones

    tim_jones

    Unity Technologies

    Joined:
    May 2, 2019
    Posts:
    287
    Hi @thebackend - please could you log this bug via Help > Report a Bug?