@Override
  public Table alterTable(Identifier ident, TableChange... changes) throws NoSuchTableException {
    Table table = getSessionCatalog().loadTable(ident);
    if (isManagedTable(table)) {
      return getTargetCatalog().alterTable(ident, changes);
    } else {
      return getSessionCatalog().alterTable(ident, changes);
    }
  }
Check if the provider is managed by target catalog.
amoro-format-mixed/amoro-mixed-spark/amoro-mixed-spark-3-common/src/main/java/org/apache/amoro/spark/SessionCatalogBase.java