On the catalyst-api changes to support a backup storage, we will need to handle 404s more
gracefully to avoid retrying for a long time reading from a storage that just doesn't have the file.
This is especially relevant in the manifest fetching code, which will always need to fetch the file in
both primary and backup storages. We don't want to wait for all retries on the backup storage when
the manifest only exists on the primary (most of the time).
On the catalyst-api changes to support a backup storage, we will need to handle 404s more gracefully to avoid retrying for a long time reading from a storage that just doesn't have the file.
This is especially relevant in the manifest fetching code, which will always need to fetch the file in both primary and backup storages. We don't want to wait for all retries on the backup storage when the manifest only exists on the primary (most of the time).