ogbenisho
Databricks Partner

You are very right. Before, you won’t be able to create storage credentials or external locations until a UC metastore existed, because those objects were scoped inside the metastore. That’s why everything used to work fine once the metastore was provisioned.

Now, they’re no longer scoped inside a metastore, but instead exist at the account level. Meaning you must create them before the metastore, so that when you provision the metastore, it can reference those pre-existing objects. The error you saw (parent external location … does not exist) is UC enforcing that the metastore must point to a valid external location object.

Here is the revised corrected sequence:

  1. Create storage account in Azure.
  2. Create workspace in Azure Databricks.
  3. Grant Storage Blob Contributor role on the storage account to the Access Connector.
  4. Create storage credential (account-level UC object, linked to the Access Connector).
  5. Create external location (account-level UC object, with explicit abfss:// path).
  6. Create UC metastore and link the workspace to it, referencing the external location.

So, steps 4 and 5 no longer depend on the metastore being present, as they live at the account level. That’s the key shift.

View solution in original post