From 8793f6b788bab0fa8464e173d39d119c296f8551 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Mon, 28 Oct 2013 21:34:55 +0100 Subject: mod_storage_sql2: Split up setting of encoding and table upgrade code --- plugins/mod_storage_sql2.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'plugins') diff --git a/plugins/mod_storage_sql2.lua b/plugins/mod_storage_sql2.lua index 174bad78..7e4de79b 100644 --- a/plugins/mod_storage_sql2.lua +++ b/plugins/mod_storage_sql2.lua @@ -108,8 +108,9 @@ local function set_encoding() local success,err = engine:transaction(function() return engine:execute(set_names_query); end); if not success then module:log("error", "Failed to set database connection encoding to UTF8: %s", err); - return; end +end +local function upgrade_table() if params.driver == "MySQL" then -- COMPAT w/pre-0.9: Upgrade tables to UTF-8 if not already local check_encoding_query = "SELECT `COLUMN_NAME`,`COLUMN_TYPE` FROM `information_schema`.`columns` WHERE `TABLE_NAME`='prosody' AND ( `CHARACTER_SET_NAME`!='utf8' OR `COLLATION_NAME`!='utf8_bin' );"; @@ -149,6 +150,7 @@ do -- process options to get a db connection -- Encoding mess set_encoding(); + upgrade_table(); -- Automatically create table, ignore failure (table probably already exists) create_table(); -- cgit v1.2.3