pub async fn get_replace_table_plan(
session: &Arc<SessionImpl>,
table_name: ObjectName,
new_definition: Statement,
old_catalog: &Arc<TableCatalog>,
new_version_columns: Option<Vec<ColumnCatalog>>,
) -> Result<(Option<Source>, Table, StreamFragmentGraph, ColIndexMapping, TableJobType), RwError>