fix(sqlite): don't try to re-create existing indices

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
This commit is contained in:
Akhil Narang 2025-03-17 17:05:05 +05:30
parent 50fae37072
commit 40c07e0d9b
No known key found for this signature in database
GPG key ID: 9DCC61E211BF645F

View file

@ -113,12 +113,12 @@ class SQLiteTable(DBTable):
index_queries = []
if self.add_unique:
index_queries.extend(
f"CREATE UNIQUE INDEX `{col.fieldname}` ON `{self.table_name}` (`{col.fieldname}`)"
f"CREATE UNIQUE INDEX IF NOT EXISTS `{col.fieldname}` ON `{self.table_name}` (`{col.fieldname}`)"
for col in self.add_unique
)
if self.add_index:
index_queries.extend(
f"CREATE INDEX `{col.fieldname}_index` ON `{self.table_name}` (`{col.fieldname}`)"
f"CREATE INDEX IF NOT EXISTS `{col.fieldname}_index` ON `{self.table_name}` (`{col.fieldname}`)"
for col in self.add_index
if not frappe.db.get_column_index(self.table_name, col.fieldname, unique=False)
)