From 284ff1d2861e91cec698affd7df9864f1a452a1b Mon Sep 17 00:00:00 2001 From: Jan Moeller Date: Tue, 11 Jun 2024 18:57:30 +0200 Subject: [PATCH] chore(migrate): improve error message when multiple old tables with data exist --- src/transaction/internal/rw_transaction.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/transaction/internal/rw_transaction.rs b/src/transaction/internal/rw_transaction.rs index c089ccb..8b7d032 100644 --- a/src/transaction/internal/rw_transaction.rs +++ b/src/transaction/internal/rw_transaction.rs @@ -232,7 +232,7 @@ impl<'db> InternalRwTransaction<'db> { )); } - let mut old_table_definition = None; + let mut old_table_definition: Option<&PrimaryTableDefinition> = None; let model_table_definitions = self.primary_table_definitions.values().filter(|t| { t.native_model_options.native_model_id == new_table_definition.native_model_options.native_model_id @@ -256,9 +256,10 @@ impl<'db> InternalRwTransaction<'db> { let len = table.len()?; if len > 0 && old_table_definition.is_some() { panic!( - "Impossible to migrate the table {} because the table {} has data", + "Impossible to migrate the table {} because multiple old tables with data exist: {}, {}", T::native_db_model().primary_key.unique_table_name, - new_primary_table_definition.redb.name() + new_primary_table_definition.redb.name(), + old_table_definition.unwrap().redb.name() ); } else if table.len()? > 0 { old_table_definition = Some(new_primary_table_definition);