Addressable bundle name always changed when build

When I build addressable with “New Build → Default Build Script”, some asset bundle files’ name always changed.

Because I’m using CDN, so players need to download new bundles which didn’t changed. It causes uncomportable experience and increase price of CDN.

  1. Set Addressable Groups appropriately.
  2. In Addressable Groups tab, select “New Build → Default Build Script”.
  3. Check asset bundle files.
  4. Check changed files in Unity project with version control tool(Git)
  5. Check that there are no changes related to resources contained in Addressable Groups.
  6. Backup bundles files to another folder.
  7. Perform step 2 again.
  8. Compare the names of the first and second bundle files
  9. Changed several asset bundle files.

I don’t know why this is happening.

I tried searching for related information, but didn’t get the answer I was looking for.

@min121212 , Hi there, generally speaking if you’re rebuilding AssetBundles on the same machine and there are no changes, they should be identical. If you change machines between builds, there is unfortunately some indeterminism that can happen, but on the same machine this should not be the case.

If possible, could you send a bug report reproducing this issue so that we can take a look at it? We know that indeterminism in AssetBundle building, while uncommon, is one of the more frustrating parts of uploading remote content, so having a project that reproduces one way this indeterminism arises would be very helpful for fixing it!

A way to reproduce the problem is to build the Addressable twice in a row.

I’ve attached some of the logs that show up in the Unity Editor Console after building Addressable. This is a warning message related to shaders, and occurs in some shaders.

  • [SHADERGRAPH_NAME_a] pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them at line [LINE_NUMBER]
  • [SHADERGRAPH_NAME_b] floating point division by zero at line [LINE_NUMBER]
  • [SHADERGRAPH_NAME_c] implicit truncation of vector type at line [LINE_NUMBER]

There are many prefabs in Addressable Groups that use these shaders. Can these Warning messages affect bundle changes?

I have the same bug almost every time I change something on the addressable id changes the name of the asset bungle. But the main problem is that the Unity Content delivery uses the name of the asset bungle so every time I change any asset or add any asset to addressable. I need to rebuild it, upload it on the CCD, make a new build for my server, upload that on Multiplay, and rebuild my client. Just because the asset bungle name keeps changing every single time.

It is happening the same to me, the behaviour seems to be when I change the build target from Android to WebGL and viceversa. In more detail, this happens:

  • I build addressables for WebGL and then I build WebGL client app
  • Then I switch the build target to Android to build an oculus app
  • Again I switch to WebGL in order to do some bugfixed, I build the application and now the addressables has been changed in name, so the client is for some reasons asking for addressables that don’t exist on the remote server I populated during the first build. I didn’t changed anything regarding these addressables and I didn’t build anything on their side, just a new client application build

Have the same problem if i make some changes and make build again i have different names(((((((

Here is an article about how to determine what changes in an asset bundle: https://support.unity.com/hc/en-us/articles/217123266-How-do-I-determine-what-is-in-my-Scene-bundle-. I used this method before to investigate such issues.

Another project, similar issue, where when I press “update previous builds”, it creates new bundles without replacing the older ones, with a new catalog and new names, so the old application can’t reach the updated addressable build, even the things that were there before.
Other than that, the first time I build certain groups I get some folders structured like data/[Build Target]/prefabs/[Build Target] but from the second time I get these bundles located in the root folder of the addressables destination (ServerData/[Build Target]). After 1 build and 2 updated builds, I have triple bundle for each of my character avatar prefabs, 1 of each in the structured folder, the other 2 in the root folder.