Hi Davide,
The conversion is designed to be resumable. It copies data and the Delta log to the managed location first, then switches the metadata, and the page says plainly that if the command fails you can retry it and it "resumes from where it left off". So a retry that succeeds isn't luck, it's the expected recovery path. That matches what you're seeing.
https://docs.databricks.com/aws/en/tables/convert-to-managed
Three things from the same page worth respecting while you run this:
- Always retry on the same runtime. Since you're on serverless that's covered, but if someone reruns a failed table from a classic cluster you can hit VERSIONED_CLONE_INTERNAL_ERROR because the metadata is serialized differently across versions.
- Don't run two SET MANAGED on the same table at the same time, the docs warn it can leave the table in an inconsistent state. Sequential per table is the safe pattern.
- Cancel any OPTIMIZE / liquid clustering / ZORDER jobs on those tables and don't schedule any during the conversion.
After a retry succeeds, confirm with DESCRIBE EXTENDED that the table is MANAGED and remember the old files stay in the external location for 14 days for rollback (UNSET MANAGED) and are only cleaned by predictive optimization or a manual VACUUM after that.
The error you pasted carries a RequestId. That plus the timestamp is exactly what Databricks support needs to see what the control plane declined on the first attempt, so if this keeps happening across tables it's worth a ticket. Until then, a simple retry loop with a short backoff is a reasonable way to keep the migration moving.
Hope this helps
Thomaz A. Rossito Neto
Principal Data & AI ā CI&T
thomazn@ciandt.com
linkedin.com/in/thomaz-antonio-rossito-neto