mod_storage_sql: Only remove old index if it exists
Avoids an error if the upgrade is performed twice..
--- a/plugins/mod_storage_sql.lua Sat Jun 17 00:00:21 2023 +0200
+++ b/plugins/mod_storage_sql.lua Sat Jun 17 00:22:45 2023 +0200
@@ -859,16 +859,18 @@
end
end
end)
- if apply_changes then
- local success = engine:transaction(function ()
- return assert(engine:execute([[DROP INDEX "prosody_index";]]));
- end);
- if not success then
- module:log("error", "Failed to delete obsolete index \"prosody_index\"");
- return false;
+ if indices["prosody_index"] then
+ if apply_changes then
+ local success = engine:transaction(function ()
+ return assert(engine:execute([[DROP INDEX "prosody_index";]]));
+ end);
+ if not success then
+ module:log("error", "Failed to delete obsolete index \"prosody_index\"");
+ return false;
+ end
+ else
+ changes = true;
end
- else
- changes = changes or indices["prosody_index"];
end
end
return changes;