Data & Analytics
Unity Catalog migration: test the job and storage permissions before cutover
Moving tables from Hive Metastore can leave jobs or path-based reads failing. Validate compute, grants and external locations with real principals.
October 20, 2026
A Unity Catalog migration can look complete in a table inventory while a scheduled job fails the next morning. A migration discussion asks specifically about permissions, external locations and broken jobs. A later external-location thread illustrates how table access and path-based storage access can be confused. Treat those reports as prompts for a controlled cutover test, not as universal product defects.
Inventory access paths, not just tables
List the principal for each scheduled job, notebook, BI connection and service integration. Record whether it reads a named table, a volume or a cloud path. Name the compute mode and workspace. A user successfully querying a table interactively does not prove the service principal or job cluster can do the same.
Databricks' migration guide distinguishes the requirements for external tables and compute. Its privilege guidance makes clear that grants apply to specific securables. Build a matrix of catalog, schema, table, volume and external-location needs for each access path. Cloud IAM and Unity Catalog permissions are separate parts of the route.
Run a cutover rehearsal
Choose one representative domain. Migrate its tables, then execute the same production-like jobs with the actual runtime identities. Test table reads, writes, direct file reads, external locations, notebook dependencies and downstream reports. Capture permission-denied messages with the principal, object and operation. Fix the narrow grant or path design, then rerun the workload.
Where possible, replace direct cloud paths with governed tables or volumes. If a job truly needs path access, document the external location and grants explicitly. Do not assign broad privileges simply to make a migration smoke test green.
Define rollback and acceptance
Record row and schema parity, workload completion, output checks, permission denials and lineage evidence. Set a cutover window and rollback owner. A table count alone is an incomplete acceptance criterion; the customer buys a functioning governed workload.
Adovo’s view
Governance becomes real when an existing job meets a new boundary. Migration is not the movement of names into a catalog; it is the transfer of every legitimate workflow to an explicit access contract. Test with the identity that will run at 2 a.m. That is the identity the business will depend on.
