diff --git a/frontend/linux/workbench/main.cpp b/frontend/linux/workbench/main.cpp index 36283e9db..5153c14f1 100644 --- a/frontend/linux/workbench/main.cpp +++ b/frontend/linux/workbench/main.cpp @@ -41,15 +41,8 @@ DEFAULT_LOG_DOMAIN("main") -#if defined(HAVE_GNOME_KEYRING) || defined(HAVE_OLD_GNOME_KEYRING) -extern "C" { -// gnome-keyring has been deprecated in favor of libsecret -// More informations can be found here https://mail.gnome.org/archives/commits-list/2013-October/msg08876.html -// Below defines will turn off deprecations and allow build with never Gnome until we will not move to libsecret. -#define GNOME_KEYRING_DEPRECATED -#define GNOME_KEYRING_DEPRECATED_FOR(x) -#include -}; +#ifdef HAVE_LIBSECRET_KEYRING +#include #endif #include @@ -107,16 +100,9 @@ int main(int argc, char **argv) { std::string user_data_dir = std::string(g_get_home_dir()).append("/.mysql/workbench"); base::Logger log(user_data_dir, getenv("MWB_LOG_TO_STDERR") != NULL); -#if defined(HAVE_GNOME_KEYRING) || defined(HAVE_OLD_GNOME_KEYRING) - if (getenv("WB_NO_GNOME_KEYRING")) - logInfo("WB_NO_GNOME_KEYRING environment variable has been set. Stored passwords will be lost once quit.\n"); - else { - if (!gnome_keyring_is_available()) { - setenv("WB_NO_GNOME_KEYRING", "1", 1); - logError( - "Can't communicate with gnome-keyring, it's probably not running. Stored passwords will be lost once quit.\n"); - } - } +#ifdef HAVE_LIBSECRET_KEYRING + if (getenv("WB_NO_KEYRING")) + logInfo("WB_NO_KEYRING environment variable has been set. Stored passwords will be lost once quit.\n"); #endif wb::WBOptions wboptions(argv[0]); diff --git a/frontend/linux/workbench/mysql-workbench.in b/frontend/linux/workbench/mysql-workbench.in index cbecde4a9..568ea1060 100755 --- a/frontend/linux/workbench/mysql-workbench.in +++ b/frontend/linux/workbench/mysql-workbench.in @@ -1,8 +1,8 @@ #!/bin/bash -# Uncomment the following line if you're having trouble with gnome-keyring lockups. +# Uncomment the following line if you're having trouble with keyring/libsecret lockups. # This will cause passwords to be stored only temporarily for the session. -#WB_NO_GNOME_KEYRING=1 +#WB_NO_KEYRING=1 # force disable the Mac style single menu hack in Ubuntu Unity export UBUNTU_MENUPROXY=0 diff --git a/modules/db.mysql/src/module_db_mysql.cpp b/modules/db.mysql/src/module_db_mysql.cpp index 63f3a9292..cbba21ff3 100644 --- a/modules/db.mysql/src/module_db_mysql.cpp +++ b/modules/db.mysql/src/module_db_mysql.cpp @@ -127,7 +127,13 @@ namespace { if (strlen(part->minRows().c_str())) sql.append(" MIN_ROWS = ").append(base::escape_sql_string(part->minRows().c_str())); - // TODO: process TABLESPACE and NODEGROUP cluster-specific options + // Add TABLESPACE support (for NDB and InnoDB storage engines) + if (strlen(part->tableSpace().c_str())) + sql.append(" TABLESPACE = ").append(base::escape_sql_string(part->tableSpace().c_str())); + + // Add NODEGROUP support (for NDB Cluster storage engine) + if (part->nodeGroupId() > 0) + sql.append(" NODEGROUP = ").append(std::to_string(part->nodeGroupId())) } };