Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

1.4.0 freeze after Check Duplicate Bundle Dependencies

Discussion in 'Addressables' started by RakNet, Nov 23, 2019.

  1. RakNet

    RakNet

    Joined:
    Oct 9, 2013
    Posts:
    313
    Was previously on "com.unity.addressables": "1.1.7", worked more or less
    Upgraded to "com.unity.addressables": "1.4.0"

    Using Unity 2019.2.0f1

    I did not change any setting away from the defaults besides the list of addressable assets in the screenshot.

    When I go to Addressables Analyze, clicking "Check Duplicate Bundle Dependencies" freezes up Unity once the window with the progress bar title "Generate Bundle Commands" is no longer visible. I waited for 15 minutes. Can't view the log since the editor is frozen, but I've attached what is on disk.

    Every asset uses the same class, AsynchPrefabList.cs (attached)

    I have link.xml next to my other dll files in the project, based on prior advice:
    Code (CSharp):
    1. <linker>
    2.        <assembly fullname="ModV1" preserve="all"/>
    3.        <assembly fullname="EmpireOfEmber" preserve="all"/>
    4.        <assembly fullname="YarnSpinner" preserve="all"/>
    5. </linker>

    upload_2019-11-22_21-7-27.png

    upload_2019-11-22_21-12-17.png

    upload_2019-11-22_21-13-7.png
     

    Attached Files:

  2. RakNet

    RakNet

    Joined:
    Oct 9, 2013
    Posts:
    313
    Additional issue with 1.4.0:

    I have link.xml in the same directory as my DLLs, as which was previously suggested in this forum.
    https://forum.unity.com/threads/add...ormal-unknown-assembly-error-feedback.723956/

    From "Addressables Groups" after clicking Build, a new link.xml is created at Library\com.unity.addressables\StreamingAssetsCopy\aa\Windows\link.xml

    This new version of link.xml does not incorporate the preserve="all" setting I have in link.xml

    New version:
    <assembly fullname="ModV1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">

    This is causing an actual error: 999+ of
    "Unknown Assembly ModV1
    UnityEditor.GenericMenu:CatchMenu(Object, String[], Int32)"

    From
    Line 107 of CalculateAssetDependencyData.cs
    var referencedObjects = ContentBuildInterface.GetPlayerDependenciesForObjects(includedObjects, m_Parameters.Target, m_Parameters.ScriptInfo);
     
    Last edited: Nov 23, 2019
  3. RakNet

    RakNet

    Joined:
    Oct 9, 2013
    Posts:
    313
    Trying to make a build, it worked once out of 10 attempts. The remaining 9 attempts have an error of the following sort

    Exception encountered in operation Resource<IAssetBundleResource>(defaultlocalgroup_assets_res_avatarabilities_673a56a1d039112a4a5ae10c9f799757.bundle): Invalid path in AssetBundleProvider: 'D:/temp2/Empire of Ember_Data/StreamingAssets/aa/Windows/StandaloneWindows64/defaultlocalgroup_assets_res_avatarabilities_673a56a1d039112a4a5ae10c9f799757.bundle'.
    UnityEngine.Logger:LogFormat(LogType, String, Object[])
    UnityEngine.Debug:LogErrorFormat(String, Object[])
    UnityEngine.AddressableAssets.AddressablesImpl:LogException(AsyncOperationHandle, Exception)
    System.Action`2:Invoke(T1, T2)
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:set_OperationException(Exception)
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:Complete(TObject, Boolean, String)
    UnityEngine.ResourceManagement.ResourceProviders.AssetBundleResource:BeginOperation()
    UnityEngine.ResourceManagement.AsyncOperations.ProviderOperation`1:Execute()
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:InvokeExecute()
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:Start(ResourceManager, AsyncOperationHandle, DelegateList`1)
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:UnityEngine.ResourceManagement.AsyncOperations.IAsyncOperation.Start(ResourceManager, AsyncOperationHandle, DelegateList`1)
    UnityEngine.ResourceManagement.ResourceManager:provideResource(IResourceLocation, Type)
    UnityEngine.ResourceManagement.ResourceManager:provideResourceGroupCached(IList`1, Int32, Type, Action`1)
    UnityEngine.ResourceManagement.ResourceManager:provideResource(IResourceLocation, Type)
    UnityEngine.ResourceManagement.ResourceManager:provideResource(IResourceLocation)
    UnityEngine.AddressableAssets.AddressablesImpl:LoadAssetAsync(Object)
    UnityEngine.AddressableAssets.<>c__DisplayClass63_0`1:<LoadAssetWithChain>b__0(AsyncOperationHandle)
    System.Func`2:Invoke(T)
    UnityEngine.ResourceManagement.ChainOperationTypelessDepedency`1:Execute()
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:InvokeExecute()
    System.Action`1:Invoke(T)
    DelegateList`1:Invoke(T)
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:InvokeCompletionEvent()
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:Complete(TObject, Boolean, String)
    UnityEngine.AddressableAssets.Initialization.<>c__DisplayClass13_0:<LoadContentCatalogInternal>b__0(AsyncOperationHandle`1)
    System.Action`1:Invoke(T)
    DelegateList`1:Invoke(T)
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:InvokeCompletionEvent()
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:Complete(TObject, Boolean, String)
    UnityEngine.ResourceManagement.ChainOperation`2:OnWrappedCompleted(AsyncOperationHandle`1)
    System.Action`1:Invoke(T)
    DelegateList`1:Invoke(T)
    UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:InvokeCompletionEvent()
    UnityEngine.ResourceManagement.ResourceManager:ExecuteDeferredCallbacks()
    UnityEngine.ResourceManagement.ResourceManager:Update(Single)
    DG.Tweening.Core.DOSetter`1:Invoke(T)


    I did clean and build repeatedly. This only happens in the player. I can run the editor with "Use Existing Build" withou tissues.
     
  4. RakNet

    RakNet

    Joined:
    Oct 9, 2013
    Posts:
    313
    I'm disappointed by the lack of support. We lost a lot of time over this, including providing detailed bug reports, and these are major issues. It's not possible to file bugs for large (100+ GB in my case) projects with Unity due to how slow error reporting uploads are, so I'm out of options.

    I put all my assets into a scene, and load that scene in order to reference objects in my game. All bugs 'fixed', runs faster, and removes a build step.