Fossil SCM
When dropping surplus tables during "fossil rebuild", make sure to use IF EXISTS so that shadow tables from previously dropped virtual tables do not cause an SQL error.
Commit
3200a7c72e41e783a16f0d61d86464c50a7777da708375ecfc59cb471e6fa9e1
Parent
837333fc8c605b0…
1 file changed
+1
-1
+1
-1
| --- src/rebuild.c | ||
| +++ src/rebuild.c | ||
| @@ -364,11 +364,11 @@ | ||
| 364 | 364 | "'purgeevent','purgeitem','unversioned')" |
| 365 | 365 | " AND name NOT GLOB 'sqlite_*'" |
| 366 | 366 | " AND name NOT GLOB 'fx_*'" |
| 367 | 367 | ); |
| 368 | 368 | while( db_step(&q)==SQLITE_ROW ){ |
| 369 | - blob_appendf(&sql, "DROP TABLE \"%w\";\n", db_column_text(&q,0)); | |
| 369 | + blob_appendf(&sql, "DROP TABLE IF EXISTS \"%w\";\n", db_column_text(&q,0)); | |
| 370 | 370 | } |
| 371 | 371 | db_finalize(&q); |
| 372 | 372 | db_multi_exec("%s", blob_str(&sql)/*safe-for-%s*/); |
| 373 | 373 | blob_reset(&sql); |
| 374 | 374 | db_multi_exec("%s", zRepositorySchema2/*safe-for-%s*/); |
| 375 | 375 |
| --- src/rebuild.c | |
| +++ src/rebuild.c | |
| @@ -364,11 +364,11 @@ | |
| 364 | "'purgeevent','purgeitem','unversioned')" |
| 365 | " AND name NOT GLOB 'sqlite_*'" |
| 366 | " AND name NOT GLOB 'fx_*'" |
| 367 | ); |
| 368 | while( db_step(&q)==SQLITE_ROW ){ |
| 369 | blob_appendf(&sql, "DROP TABLE \"%w\";\n", db_column_text(&q,0)); |
| 370 | } |
| 371 | db_finalize(&q); |
| 372 | db_multi_exec("%s", blob_str(&sql)/*safe-for-%s*/); |
| 373 | blob_reset(&sql); |
| 374 | db_multi_exec("%s", zRepositorySchema2/*safe-for-%s*/); |
| 375 |
| --- src/rebuild.c | |
| +++ src/rebuild.c | |
| @@ -364,11 +364,11 @@ | |
| 364 | "'purgeevent','purgeitem','unversioned')" |
| 365 | " AND name NOT GLOB 'sqlite_*'" |
| 366 | " AND name NOT GLOB 'fx_*'" |
| 367 | ); |
| 368 | while( db_step(&q)==SQLITE_ROW ){ |
| 369 | blob_appendf(&sql, "DROP TABLE IF EXISTS \"%w\";\n", db_column_text(&q,0)); |
| 370 | } |
| 371 | db_finalize(&q); |
| 372 | db_multi_exec("%s", blob_str(&sql)/*safe-for-%s*/); |
| 373 | blob_reset(&sql); |
| 374 | db_multi_exec("%s", zRepositorySchema2/*safe-for-%s*/); |
| 375 |